NDIS issues an OID query request of OID_PACKET_COALESCING_FILTER_MATCH_COUNT to obtain the number of packets that were cached, or coalesced, on the network adapter. The network adapter coalesces received packets if the adapter is enabled for NDIS packet coalescing and the packet matches a receive filter.
The InformationBuffer member of the NDIS_OID_REQUEST structure contains a pointer to a caller-allocated ULONG64 variable. Before a successful return from the query request, the driver updates the ULONG64 variable with the number of packets that have matched receive filters on the network adapter.
Starting with NDIS 6.30, drivers that support NDIS packet coalescing must support OID query requests of OID_PACKET_COALESCING_FILTER_MATCH_COUNT.
A miniport driver that supports packet coalescing must increment a ULONG64 counter for each received packet that was coalesced on the network adapter. Packets are coalesced if they match a receive filter, which overlying drivers download to the miniport driver through OID method requests of OID_RECEIVE_FILTER_SET_FILTER.
The driver returns the value of this counter when it handles an OID query request of OID_PACKET_COALESCING_FILTER_MATCH_COUNT.
The miniport driver must not clear the counter after it handles the OID query request of OID_PACKET_COALESCING_FILTER_MATCH_COUNT. The miniport driver must only clear the counter if the following conditions are true:
The miniport driver handles an OID set request of OID_PNP_SET_POWER to resume to a full-power state of NdisDeviceStateD0.
NDIS calls the miniport driver's MiniportResetEx function to reset the underlying network adapter.
For more information about packet coalescing, see NDIS Packet Coalescing.
The miniport driver returns one of the following status codes for the OID method request of OID_PACKET_COALESCING_FILTER_MATCH_COUNT:
The OID request completed successfully.
The information buffer was too short. The driver sets the DATA.SET_INFORMATION.BytesNeeded member in the NDIS_OID_REQUEST structure to the minimum buffer size that is required.
The request failed for other reasons.
|Supported in NDIS 6.30 and later.|
Build date: 11/16/2013