NdisMPromoteMiniport (Compact 2013)
3/26/2014
This function promotes a secondary miniport adapter to the primary role after the primary miniport adapter is removed from the system.
Syntax
NDIS_STATUS NdisMPromoteMiniport(
NDIS_HANDLE MiniportAdapterHandle
);
Parameters
- MiniportAdapterHandle
[in] Specifies the handle to the initialized adapter. The miniport driver previously called the NdisMSetMiniportSecondary function to set this miniport adapter to a secondary role.
Return Value
The following table shows the return values for this function.
Value |
Description |
---|---|
NDIS_STATUS_SUCCESS |
The secondary miniport adapter has been promoted to the primary role. |
NDIS_STATUS_FAILURE |
An attempt to promote the secondary miniport adapter to the primary role failed. |
Remarks
A miniport driver can call NdisMPromoteMiniport, after the primary miniport adapter is removed from the system, to set a secondary miniport adapter to the primary role. In this call, the miniport driver passes the handle to a secondary miniport adapter. The miniport driver must have previously called the NdisMSetMiniportSecondary function to set this miniport adapter to a secondary role.
A miniport driver uses a bundle of miniport adapters to balance the workload that each miniport adapter carries and to enable a secondary miniport adapter to take over packet transfers and information requests if the primary miniport adapter fails. This capability is called load balancing and fail-over (LBFO). For example, if the miniport driver's primary adapter fails, the miniport driver can call the NdisMRemoveMiniport function to remove the primary adapter from the system and from the miniport driver's bundle. The miniport driver can then call NdisMPromoteMiniport to promote a secondary adapter to the primary role.
The first miniport adapter that the miniport driver initialized is initially the primary miniport adapter. The primary miniport adapter handles all packet transfers and requests for information. A miniport driver can call NdisMSetMiniportSecondary during the subsequent initialization of several miniport adapters to set them all to secondary roles. That is, multiple secondary miniport adapters can exist in a bundle.
Requirements
Header |
ndis.h |
Library |
ndis.dll |
See Also
Reference
NDIS 5.x Legacy Functions
NdisMRemoveMiniport
NdisMSetMiniportSecondary