OID_NIC_SWITCH_ENUM_VFS
過度處理驅動程式或使用者模式應用程式會發出物件識別碼, (OID) 方法要求OID_NIC_SWITCH_ENUM_VFS以取得陣列。 陣列中的每個元素都會指定 PCI Express (PCIe) Virtual Function (VF) 附加至網路介面卡 NIC 交換器上 NIC 交換器的屬性。
從這個 OID 查詢要求成功傳回之後,NDIS_OID_REQUEST結構的InformationBuffer成員會包含緩衝區的指標,其中包含下列專案:
定義陣列內元素數目 的NDIS_NIC_SWITCH_VF_INFO_ARRAY 結構。
NDIS_NIC_SWITCH_VF_INFO結構的陣列。 每個結構都包含網路介面卡 NIC 交換器上單一 VF 的相關資訊。 VF 會透過 OID_NIC_SWITCH_ALLOCATE_VF的 OID 方法要求連接到 NIC 交換器。
注意如果網路介面卡上沒有連結 NIC 交換器,NDIS_NIC_SWITCH_VF_INFO_ARRAY結構的NumElements成員會設定為零,而且不會傳回任何NDIS_NIC_SWITCH_VF_INFO結構。
備註
過度使用驅動程式和使用者模式應用程式發出 OID 方法要求OID_NIC_SWITCH_ENUM_VFS,以列舉附加至網路介面卡 NIC 交換器的 VF。
在驅動程式或應用程式發出 OID 要求之前,它必須初始化與要求一起傳遞 NDIS_NIC_SWITCH_VF_INFO_ARRAY 結構。 初始化 NDIS_NIC_SWITCH_VF_INFO_ARRAY 結構時,驅動程式或應用程式必須遵循下列指導方針:
如果在 Flags 成員中設定NDIS_NIC_SWITCH_VF_INFO_ARRAY_ENUM_ON_SPECIFIC_SWITCH旗標,驅動程式或應用程式必須將 SwitchId 成員設定為 SR-IOV 網路介面卡上的 NIC 交換器識別碼。 透過這種方式設定這些成員,VF 資訊只會針對 SR-IOV 網路介面卡上的指定 NIC 交換器傳回。
注意 過度使用的驅動程式和使用者模式應用程式可以發出 OID 查詢要求來取得 NIC 交換器識別碼 OID_NIC_SWITCH_ENUM_SWITCHES。
如果 Flags 成員設定為零,驅動程式或應用程式必須將 SwitchId 成員設定為零。 透過這種方式設定這些成員,會針對 SR-IOV 網路介面卡上的所有 NIC 交換器傳回 VF 資訊。
注意從 Windows Server 2012 開始,Windows 僅支援網路介面卡上的預設 NIC 交換器。 不論 Flags 成員中設定的旗標為何, SwitchId 成員都必須設定為 NDIS_DEFAULT_SWITCH_ID。
如需 NIC 參數的詳細資訊,請參閱 NIC 參數。
傳回狀態碼
NDIS 會處理迷你埠驅動程式OID_NIC_SWITCH_ENUM_VFS要求的 OID 方法要求。 驅動程式將不會發出此 OID 要求。
當 NDIS 處理OID_NIC_SWITCH_ENUM_VFS要求時,它會傳回下列其中一個狀態碼。
狀態碼 | 描述 |
---|---|
NDIS_STATUS_SUCCESS |
OID 要求已順利完成。 |
NDIS_STATUS_NOT_SUPPORTED |
迷你埠驅動程式不支援單一根目錄 I/O 虛擬化 (SR-IOV) 介面,或未啟用該介面。 |
NDIS_STATUS_INVALID_PARAMETER |
NDIS_NIC_SWITCH_VF_INFO_ARRAY結構的一或多個成員具有不正確值。 |
NDIS_STATUS_INVALID_LENGTH |
資訊緩衝區太短。 NDIS 會設定DATA。METHOD_INFORMATION。NDIS_OID_REQUEST 結構中的 BytesNeeded成員,到所需的緩衝區大小下限。 |
NDIS_STATUS_FAILURE |
要求因其他原因而失敗。 |
規格需求
版本 |
NDIS 6.30 和更新版本支援。 |
標頭 |
Ntddndis.h (包含 Ndis.h) |