NdisMGetVirtualFunctionBusData 함수(ndis.h)

미니포트 드라이버는 NdisMGetVirtualFunctionBusData 함수를 호출하여 네트워크 어댑터에 있는 지정된 VF(가상 함수)의 PCI Express(PCIe) 구성 공간에서 데이터를 읽습니다.

NoteNdisMGetVirtualFunctionBusData는 네트워크 어댑터의 PF(PCIe 물리적 함수)에 대한 미니포트 드라이버에서만 호출해야 합니다.

구문

ULONG NdisMGetVirtualFunctionBusData(
  [in]  NDIS_HANDLE            NdisMiniportHandle,
  [in]  NDIS_SRIOV_FUNCTION_ID VFId,
  [out] PVOID                  Buffer,
  [in]  ULONG                  Offset,
  [in]  ULONG                  Length
);

매개 변수

[in] NdisMiniportHandle

NDIS가 MiniportInitializeExMiniportAdapterHandle 매개 변수에 전달한 네트워크 어댑터 핸들입니다.

[in] VFId

PCI 구성 공간의 데이터가 반환되는 VF의 식별자입니다.

[out] Buffer

VF의 PCI 구성 공간에서 읽은 데이터를 수신하는 버퍼에 대한 포인터입니다.

[in] Offset

데이터를 읽는 VF의 PCI 구성 공간에서 오프셋(바이트 단위)입니다.

[in] Length

읽을 데이터의 길이(바이트 단위)입니다.

참고 버퍼 에서 참조하는 버퍼의 크기는 적어도 Length 매개 변수 값만큼 커야 합니다.

반환 값

NdisMGetVirtualFunctionBusData 는 PCI 구성 공간에서 읽은 바이트 수를 반환합니다. 읽기 작업이 실패하면 NdisMGetVirtualFunctionBusData 는 0을 반환합니다.

설명

PF 미니포트 드라이버는 일반적으로 OID_SRIOV_READ_VF_CONFIG_SPACE OID 메서드 요청을 처리할 때 NdisMGetVirtualFunctionBusData를 호출합니다.
그러나 드라이버는 NdisMEnableVirtualization 호출을 통해 네트워크 어댑터에서 가상화를 사용하도록 설정한 후 언제든지 이 함수를 호출할 수 있습니다.

VF의 PCI 구성 공간을 쿼리하는 방법에 대한 자세한 내용은 가상 함수에 대한 PCI 구성 공간 쿼리를 참조하세요.

SR-IOV 인터페이스에 대한 자세한 내용은 SR-IOV(단일 루트 I/O 가상화) 개요를 참조하세요.

Virtual Bus 드라이버에 상호 연결

독립 하드웨어 공급업체(IHV)가 SR-IOV 드라이버 패키지의 일부로 VBD(가상 버스 드라이버)를 제공하는 경우 해당 미니포트 드라이버는 NdisMGetVirtualFunctionBusData를 호출해서는 안 됩니다. 대신, 드라이버는 프라이빗 통신 채널을 통해 VBD와 인터페이스하고 VBD가 GetVirtualFunctionData를 호출하도록 요청해야 합니다. 이 함수는 기본 PCI 버스 드라이버에서 지원하는 GUID_PCI_VIRTUALIZATION_INTERFACE 인터페이스에서 노출됩니다.

Hyper-V 부모 파티션의 관리 운영 체제에서 실행되는 VBD는 PCI 버스의 물리적 디바이스 개체(PDO)에 IRP_MN_QUERY_INTERFACE 요청을 실행하여 GUID_PCI_VIRTUALIZATION_INTERFACE 인터페이스를 쿼리할 수 있습니다. 이 요청은 IRQL = PASSIVE_LEVEL 만들어야 합니다. 이 요청에서 드라이버는 InterfaceType 매개 변수를 GUID_PCI_VIRTUALIZATION_INTERFACE 설정해야 합니다.

요구 사항

   
지원되는 최소 클라이언트 지원되지 않음, NDIS 6.30 이상에서 지원됨
지원되는 최소 서버 Windows Server 2012
대상 플랫폼 유니버설
헤더 ndis.h(Ndis.h 포함)
라이브러리 Ndis.lib
IRQL <= DISPATCH_LEVEL

참고 항목

GUID_PCI_VIRTUALIZATION_INTERFACE

GetVirtualFunctionData

NdisMEnableVirtualization

OID_NIC_SWITCH_ALLOCATE_VF

OID_SRIOV_READ_VF_CONFIG_SPACE