функция обратного вызова 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 может вызывать функцию ProviderAbortDma драйвера поставщика DMA, если она имеется, чтобы прервать все передачи DMA, запланированные в канале DMA.

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

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

NetDMA вызывает ProviderAbortDma в IRQL <= DISPATCH_LEVEL.

Требования

Требование Значение
Минимальная версия клиента Поддерживается для драйверов NetDMA 1.0 в Windows Vista.
Целевая платформа Windows
Header netdma.h (включая Netdma.h)
IRQL <= DISPATCH_LEVEL

См. также раздел

NET_DMA_CHANNEL_PARAMETERS

ProviderAllocateDmaChannel

ProviderAppendDma

ProviderStartDma