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

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

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

 
Функция ProviderSuspendDma приостанавливает передачу DMA, которая в настоящее время выполняется в канале DMA.

Синтаксис

DMA_SUSPEND_HANDLER DmaSuspendHandler;

NTSTATUS DmaSuspendHandler(
  [in]  PVOID ProviderChannelContext,
  [out] PPHYSICAL_ADDRESS *pLastDescriptor
)
{...}

Параметры

[in] ProviderChannelContext

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

[out] pLastDescriptor

Указатель на переменную, содержащую физический адрес последнего успешно обработанного дескриптора DMA. Поставщик DMA предоставляет этот адрес перед возвратом из ProviderSuspendDma.

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

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

Код возврата Описание
STATUS_SUCCESS
Операция выполнена успешно.
STATUS_UNSUCCESSFUL
Операция завершилась сбоем по неустановленным причинам.

Комментарии

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

Поставщик DMA завершает передачу текущего дескриптора DMA перед возвратом из ProviderSuspendDma. Если отчеты о состоянии завершения включены, подсистема DMA записывает состояние NetDmaTransferStatusSusSuspend в адрес, указанный в элементах CompletionVirtualAddress и CompletionPhysicalAddress в структура NET_DMA_CHANNEL_PARAMETERS .

Пока передача DMA приостановлена, интерфейс NetDMA может изменять связанный список дескрипторов DMA (например, вставлять или удалять дескрипторы).

Интерфейс NetDMA вызывает функцию ProviderResumeDma для возобновления операций DMA, приостановленных вызовом ProviderSuspendDma.

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

Требования

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

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

NET_DMA_CHANNEL_PARAMETERS

ProviderAllocateDmaChannel

ProviderResumeDma