SRIOV_QUERY_PROBED_BARS_2 función de devolución de llamada (pcivirt.h)

Consulta los datos leídos desde los registros de direcciones base (BAR) de PCI Express SR-IOV especificados si el valor -1 se escribió primero en ellos.

Sintaxis

SRIOV_QUERY_PROBED_BARS_2 SriovQueryProbedBars2;

NTSTATUS SriovQueryProbedBars2(
  [in]  PVOID Context,
  [in]  USHORT VfIndex,
  [out] PULONG BaseRegisterValues
)
{...}

Parámetros

[in] Context

Puntero a un contexto definido por el controlador.

[in] VfIndex

Índice de base cero del VF que se está consultando.

[out] BaseRegisterValues

Puntero a una matriz de variables que está limitada por el número de BAR en un dispositivo PCI.

Valor devuelto

Devuelve STATUS_SUCCESS si la operación se realiza correctamente. De lo contrario, devuelve un código de error NTSTATUS adecuado.

Comentarios

Esta función de devolución de llamada se implementa mediante el controlador de función física (PF). Se invoca cuando el sistema quiere leer los registros de direcciones base de la función virtual (VF) especificadas.

El controlador PF registra su implementación estableciendo el miembro QueryProbedBars_2 del SRIOV_DEVICE_INTERFACE_STANDARD_2, configurando una estructura de WDF_QUERY_INTERFACE_CONFIG y llamando a WdfDeviceAddQueryInterface.

Esta devolución de llamada se invoca mediante la pila de virtualización (sin privilegios) cuando quiere averiguar los valores de registro de dirección base de VF después de que los registros se escriban con el valor (-1). Este proceso es convencional al configurar un dispositivo PCI y el resultado permite al controlador PCI conocer la cantidad de espacio de direcciones que el dispositivo descodificaría después de habilitarlo. Cuando una máquina virtual sin privilegios escribe en las BAR de VF, la máquina virtual con privilegios puede dejar de funcionar. Por lo tanto, esta rutina requiere la necesidad de escribir en los BAR.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10
Servidor mínimo compatible Windows Server 2016
Plataforma de destino Windows
Encabezado pcivirt.h
IRQL PASSIVE_LEVEL