Querying and Changing RSC State
This section describes how to query or change the current receive segment coalescing (RSC) state of an RSC-capable miniport driver.
Querying RSC State
The current RSC state can be queried by issuing the OID_TCP_OFFLOAD_CURRENT_CONFIG OID request. NDIS handles this OID and does not pass it down to the miniport.
Changing RSC State
RSC can be enabled or disabled by issuing the OID_TCP_OFFLOAD_PARAMETERS OID request. This OID uses an NDIS_OFFLOAD_PARAMETERS structure. In this structure, the RscIPv4 and RscIPv6 members can have the following values:
Term | Description |
---|---|
NDIS_OFFLOAD_PARAMETERS_NO_CHANGE |
The RSC state is unchanged. |
NDIS_OFFLOAD_PARAMETERS_RSC_DISABLED |
Specify this flag to disable RSC. |
NDIS_OFFLOAD_PARAMETERS_RSC_ENABLED |
Specify this flag to enable RSC. |
After the miniport driver processes the OID_TCP_OFFLOAD_PARAMETERS OID request, it must give an NDIS_STATUS_TASK_OFFLOAD_CURRENT_CONFIG status indication with the updated offload state.
When a miniport driver receives a OID_TCP_OFFLOAD_CURRENT_CONFIG OID request in which the NDIS_OFFLOAD_PARAMETERS_RSC_DISABLED flag is specified, the driver must indicate any existing coalesced segments up the stack before completing the OID request.