Поделиться через


функция обратного вызова DMA_ABORT_HANDLER (netdma.h)

Примечание Интерфейс NetDMA не поддерживается

в Windows 8 и более поздних версиях.

 
Функция ProviderAbortDma отменяет любые передачи DMA, связанные с каналом DMA.

Синтаксис

DMA_ABORT_HANDLER DmaAbortHandler;

NTSTATUS DmaAbortHandler(
  [in] PVOID ProviderChannelContext
)
{...}

Параметры

[in] ProviderChannelContext

Указатель, определяющий область контекста канала DMA. Поставщик DMA вернул этот дескриптор в NetDMA в расположении, указанном в параметре pProviderChannelContextфункция ProviderAllocateDmaChannel.

Возвращаемое значение

ProviderAbortDma возвращает одно из следующих значений состояния:

Возвращаемый код Описание
STATUS_SUCCESS
Операция успешно завершена.
STATUS_UNSUCCESSFUL
Операция завершилась ошибкой из-за неуказаемых причин.

Замечания

Функция ProviderAbortDma является необязательной функцией для поставщиков NetDMA. Интерфейс NetDMA может вызывать функцию драйвера поставщика DMA ProviderAbortDma, чтобы прервать все передачи DMA, запланированные на канал DMA.

В ProviderAbortDmaпоставщик DMA должен немедленно завершить передачу без завершения передачи данных, связанных с текущим дескриптором DMA. Если включен отчет о состоянии завершения, подсистема DMA записывает состояние NetDmaTransferStatusHalted в адресе, указанном в CompletionVirtualAddress и CompletionPhysicalAddress членов NET_DMA_CHANNEL_PARAMETERS структура.

После завершения операции прерывания канал DMA должен быть готов к интерфейсу NetDMA для вызова функции ProviderStartDma. Интерфейс NetDMA не вызывает функцию ProviderAppendDma до перезапуска передачи.

NetDMA вызывает ProviderAbortDma по адресу IRQL <= DISPATCH_LEVEL.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается для драйверов NetDMA 1.0 в Windows Vista.
целевая платформа Виндоус
заголовка netdma.h (include Netdma.h)
IRQL <= DISPATCH_LEVEL

См. также

NET_DMA_CHANNEL_PARAMETERS

ProviderAllocateDmaChannel

providerAppendDma

ProviderStartDma