OID_RECEIVE_FILTER_QUEUE_ALLOCATION_COMPLETE
NDIS-Protokolltreiber stellen OID-Methodenanforderungen (Object Identifier) von OID_RECEIVE_FILTER_QUEUE_ALLOCATION_COMPLETE aus, um den Miniporttreiber darüber zu benachrichtigen, dass eine Zuordnung für den aktuellen Batch von Empfangswarteschlangen abgeschlossen wurde.
Das InformationBuffer-Element der NDIS_OID_REQUEST-Struktur enthält einen Zeiger auf eine NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_ARRAY-Struktur , gefolgt von einer NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_PARAMETERS-Struktur für jede Warteschlange. Nach einer erfolgreichen Rückgabe von der OID-Methodenanforderung enthält das InformationBuffer-Element der NDIS_OID_REQUEST-Struktur einen Zeiger auf dasselbe Array von Strukturen, und das CompletionStatus-Element jeder NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_PARAMETERS-Struktur enthält die vervollständigte status für jede Warteschlange.
Bemerkungen
Die Anforderung der OID-Methode von OID_RECEIVE_FILTER_QUEUE_ALLOCATION_COMPLETE ist optional für NDIS 6.20 und höhere Miniporttreiber. Dies ist für Miniporttreiber erforderlich, die die VMQ-Schnittstelle (VMQ) unterstützen.
Nach dem Zuweisen einer oder mehrerer Empfangswarteschlangen und optionalem Festlegen der anfänglichen Filter muss der Protokolltreiber die OID-Methodenanforderung von OID_RECEIVE_FILTER_QUEUE_ALLOCATION_COMPLETE ausstellen, um den Miniporttreiber darüber zu informieren, dass die Zuordnung für den aktuellen Batch von Empfangswarteschlangen abgeschlossen wurde. Dadurch kann der Miniporttreiber die Hardwareressourcen zwischen mehreren Empfangswarteschlangen ausgleichen. bei Bedarf kann es Ressourcen wie shared memory für die Empfangswarteschlangen zuordnen.
Nachdem ein Miniporttreiber eine OID_RECEIVE_FILTER_QUEUE_ALLOCATION_COMPLETE Anforderung empfängt und filtert, die für die Warteschlange festgelegt sind, befindet sich die Warteschlange im Status "Ausgeführt". In diesem Zustand kann der Miniporttreiber Hinweise auf Pakete in der Warteschlange starten, indem er NdisMIndicateReceiveNetBufferLists aufruft.
Rückgabestatuscodes
Der Miniporttreiber gibt einen der folgenden status Codes für die OID-Methodenanforderung von OID_RECEIVE_FILTER_QUEUE_ALLOCATION_COMPLETE zurück.
Statuscode | BESCHREIBUNG |
---|---|
NDIS_STATUS_SUCCESS |
Die Warteschlangenzuordnung wurde abgeschlossen. Der Informationspuffer enthält die aktualisierten NDIS_RECEIVE_QUEUE_ALLOCATION_COMPLETE_ARRAY Struktur- und Parameterstrukturen mit der vervollständigten status für die Warteschlangenzuordnung. |
NDIS_STATUS_PENDING |
Die Anforderung steht aus. Der endgültige status Code und die Ergebnisse werden an den OID-Anforderungsabschlusshandler des Aufrufers übergeben. |
NDIS_STATUS_INVALID_PARAMETER |
Mindestens ein Parameter, den der überlastende Treiber angegeben hat, war ungültig. |
NDIS_STATUS_INVALID_LENGTH |
Der Informationspuffer war zu kurz. NDIS legt die DATEN fest. METHOD_INFORMATION. BytesNeed-Member in der NDIS_OID_REQUEST-Struktur auf die erforderliche Mindestpuffergröße. |
NDIS_STATUS_NOT_SUPPORTED |
Die NDIS-Version des Miniporttreibers ist früher als Version 6.20. |
NDIS_STATUS_FAILURE |
Die Anforderung ist aus anderen Gründen fehlgeschlagen. |
Requirements (Anforderungen)
Version |
Unterstützt in NDIS 6.20 und höher. |
Header |
Ntddndis.h (include Ndis.h) |
Weitere Informationen
NdisMIndicateReceiveNetBufferLists