Share via


VPCI_READ_BLOCK función de devolución de llamada (vpci.h)

La rutina ReadVfConfigBlock lee un bloque de datos de configuración para una función virtual PCI Express (PCIe). El controlador de un VF PCIe llama a esta rutina en un dispositivo que admite la interfaz de virtualización de E/S raíz única (SR-IOV).

Sintaxis

VPCI_READ_BLOCK VpciReadBlock;

NTSTATUS VpciReadBlock(
  PVOID Context,
  ULONG BlockId,
  PVOID Buffer,
  ULONG Length
)
{...}

Parámetros

Context

[in] Puntero a información de contexto específica de la interfaz. El autor de la llamada pasa el valor que se pasa como miembro Context de la estructura VPCI_INTERFACE_STANDARD de la interfaz.

BlockId

[in] Identificador del bloque de configuración de VF que se va a leer. Este identificador es propietario del proveedor de hardware independiente (IHV) y solo lo usan los controladores para la función física PCIe (PF) y VF en el dispositivo.

Buffer

[out] Puntero a un búfer asignado por el autor de la llamada que contendrá los datos de configuración que se van a leer. Para obtener más información, vea la sección Comentarios.

Length

[in] Número de bytes que se van a leer del bloque de configuración de VF.

Nota

El valor de este parámetro no debe superar VPCI_MAX_READ_WRITE_BLOCK_SIZE.

Valor devuelto

La rutina ReadVfConfigBlock devuelve STATUS_SUCCESS si la operación se realiza correctamente. De lo contrario, la rutina devuelve un valor NTSTATUS adecuado.

Comentarios

Cuando se llama a la rutina ReadVfConfigBlock , se notifica al controlador del PF que devuelva datos de un bloque de configuración de VF especificado.

Se usa un bloque de configuración de VF para la comunicación backchannel entre los controladores del PF y un VF en un dispositivo que admite la interfaz SR-IOV. El IHV puede definir uno o varios bloques de configuración de VF para el dispositivo. Cada bloque de configuración de VF tiene un formato, longitud y identificador de bloque definido por IHV.

Los datos de configuración de VF se pueden intercambiar entre los siguientes controladores de forma protegida:

  • Controlador VF, que se ejecuta en el sistema operativo invitado. Este sistema operativo se ejecuta dentro de una partición secundaria de Hyper-V.
  • El controlador PF, que se ejecuta en el sistema operativo de administración. Este sistema operativo se ejecuta dentro de la partición primaria de Hyper-V.

Los controladores del PF y VF usan los datos de cada bloque de configuración de VF.

Nota

El IOCTL_VPCI_READ_BLOCK IOCTL ofrece una alternativa asincrónica a la rutina ReadVfConfigBlock .

Requisitos

Requisito Value
Servidor mínimo compatible Windows Server 2012
Encabezado vpci.h
IRQL <= APC_LEVEL

Consulte también

IOCTL_VPCI_READ_BLOCK

VPCI_INTERFACE_STANDARD