NDK_FN_CREATE_CQ Rückruffunktion (ndkpi.h)
Die Funktion NdkCreateCq (NDK_FN_CREATE_CQ) erstellt ein CQ-Objekt (NDK-Vervollständigungswarteschlange).
Syntax
NDK_FN_CREATE_CQ NdkFnCreateCq;
NTSTATUS NdkFnCreateCq(
[in] NDK_ADAPTER *pNdkAdapter,
[in] ULONG CqDepth,
[in] NDK_FN_CQ_NOTIFICATION_CALLBACK CqNotification,
[in, optional] PVOID CqNotificationContext,
[in, optional] GROUP_AFFINITY *Affinity,
[in] NDK_FN_CREATE_COMPLETION CreateCompletion,
[in, optional] PVOID RequestContext,
NDK_CQ **ppNdkCq
)
{...}
Parameter
[in] pNdkAdapter
Ein Zeiger auf ein NDK-Adapterobjekt (NDK_ADAPTER).
[in] CqDepth
Die maximale Anzahl von Vervollständigungseinträgen, die der CQ enthalten kann. Dieser Wert muss kleiner oder gleich dem MaxCqDepth-Wert sein, der in der NDK_ADAPTER_INFO-Struktur angegeben ist.
[in] CqNotification
Ein Zeiger auf die Funktion NdkCqNotificationCallback (NDK_FN_CQ_NOTIFICATION_CALLBACK), die der Anbieter verwendet, um den Consumer zu benachrichtigen, wenn Anforderungsvervollständigungen in der CQ-Warteschlange stehen. Der Anbieter ruft NdkCqNotificationCallback nur dann auf, wenn der Consumer die Benachrichtigung mit der Funktion NdkArmCq (NDK_FN_ARM_CQ) ausgibt.
[in, optional] CqNotificationContext
Ein Kontextwert, den der NDK-Anbieter an die NdkCqNotificationCallback-Funktion zurückgibt, die im CqNotification-Parameter angegeben ist.
[in, optional] Affinity
Eine Affinitätsmaske (GROUP_AFFINITY), die bevorzugte Prozessoren bereitstellt, die der Consumer zum Ausführen der NdkCqNotificationCallback-Rückrufe auswählen würde. Anbieter sollten die Prozessoreinstellungen berücksichtigen, wenn die zugrunde liegende Hardware dies zulässt, aber Verbraucher können nicht davon ausgehen, dass NdkCqNotificationCallback-Rückrufe nur auf den bevorzugten Prozessoren erfolgen. Legen Sie Affinität auf NULL fest, wenn keine bevorzugten Prozessoren vorhanden sind.
[in] CreateCompletion
Ein Zeiger auf eine NdkCreateCompletion-Funktion (NDK_FN_CREATE_COMPLETION), die die Erstellung eines NDK-Objekts abschließt.
[in, optional] RequestContext
Ein Kontextwert, den der NDK-Anbieter an die NdkCreateCompletion-Funktion zurückgibt, die im CreateCompletion-Parameter angegeben ist.
ppNdkCq
Ein Zeiger auf ein Vervollständigungswarteschlangenobjekt (NDK_CQ) wird an diesem Speicherort zurückgegeben, wenn die Anforderung erfolgreich ist, ohne STATUS_PENDING zurückzugeben. Wenn NdkCreateCq STATUS_PENDING zurückgibt, wird dieser Parameter ignoriert, und das erstellte Objekt wird mit dem Rückruf zurückgegeben, der im CreateCompletion-Parameter angegeben ist.
Rückgabewert
Die NDK_FN_CREATE_CQ-Funktion gibt einen der folgenden NTSTATUS-Codes zurück.
Rückgabecode | Beschreibung |
---|---|
|
Das CQ-Objekt wurde erfolgreich erstellt und mit dem Parameter *ppNdkCq zurückgegeben. |
|
Der Vorgang steht aus und wird später abgeschlossen. Der Anbieter ruft die im CreateCompletion-Parameter (NDK_FN_CREATE_COMPLETION) angegebene Funktion auf, um den ausstehenden Vorgang abzuschließen. |
|
Die Anforderung ist fehlgeschlagen, weil der angeforderte CqDepth-Wert größer als der MaxCqDepth-Wert ist, der in der NDK_ADAPTER_INFO-Struktur angegeben ist. |
|
Fehler bei der Anforderung aufgrund unzureichender Ressourcen.
Wichtig Die Anforderung kann sowohl inline als auch asynchron mit diesem status Code fehlschlagen.
|
|
Ein Fehler ist aufgetreten. |
Hinweise
Die NdkCreateCq-Funktion erstellt ein CQ-Objekt (NDK-Vervollständigungswarteschlange). Wenn die Funktion STATUS_SUCCESS zurückgibt, wird das erstellte Objekt im ppNdkCq-Parameter zurückgegeben. Wenn NdkCreateCq STATUS_PENDING zurückgibt, wird das erstellte Objekt von der NdkCreateCompletion-Funktion (NDK_FN_CREATE_COMPLETION) zurückgegeben, die im CreateCompletion-Parameter angegeben ist.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Keine unterstützt, wird in NDIS 6.30 und höher unterstützt. |
Unterstützte Mindestversion (Server) | Windows Server 2012 |
Zielplattform | Windows |
Kopfzeile | ndkpi.h (include Ndkpi.h) |
IRQL | <=DISPATCH_LEVEL |
Weitere Informationen
Anforderungen an die Lebensdauer des NDKPI-Objekts