функция обратного вызова EVT_NET_ADAPTER_CREATE_RXQUEUE (netadapter.h)
Реализация драйвером клиента функции обратного вызова события EvtNetAdapterCreateRxQueue , которая настраивает очередь получения (Rx).
Синтаксис
EVT_NET_ADAPTER_CREATE_RXQUEUE EvtNetAdapterCreateRxqueue;
NTSTATUS EvtNetAdapterCreateRxqueue(
[_In_] NETADAPTER Adapter,
[_Inout_] NETRXQUEUE_INIT *RxQueueInit
)
{...}
Параметры
[_In_] Adapter
Объект сетевого адаптера, созданный клиентом в предыдущем вызове NetAdapterCreate.
[_Inout_] RxQueueInit
Указатель на структуру NETRXQUEUE_INIT , выделенную NetAdapterCx. Дополнительные сведения см. в разделе «Примечания».
Возвращаемое значение
Если операция выполнена успешно, функция обратного вызова должна возвращать STATUS_SUCCESS или другое значение состояния, для которого NT_SUCCESS(status) равно TRUE. В противном случае — соответствующий код ошибки NTSTATUS .
Комментарии
Чтобы зарегистрировать функцию обратного вызова EVT_NET_ADAPTER_CREATE_RXQUEUE, драйвер клиента должен вызвать NetAdapterCreate.
Структура NETRXQUEUE_INIT является непрозрачной структурой, которая определяется и выделяется NetAdapterCx, аналогично WDFDEVICE_INIT.
В этом обратном вызове драйвер клиента может вызвать NetRxQueueInitGetQueueId , чтобы получить идентификатор настраиваемой очереди получения. Затем клиент вызывает NetRxQueueCreate для выделения очереди. Если NetRxQueueCreate завершается сбоем, функция обратного вызова EvtNetAdapterCreateRxQueue должна возвращать код ошибки.
NetAdapterCx вызывает EvtNetAdapterCreateRxQueue в самом конце последовательности включения питания.
Пример кода реализации этой функции обратного вызова см. в разделе Очереди передачи и получения.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Минимальная версия KMDF | 1.29 |
Минимальная версия UMDF | 2.33 |
Верхняя часть | netadapter.h (включая netadaptercx.h) |
IRQL | PASSIVE_LEVEL |