Compartir a través de


FN_VMB_CHANNEL_CREATE_GPADL_FROM_MDL función de devolución de llamada (vmbuskernelmodeclientlibapi.h)

[Parte de la información hace referencia a la versión preliminar del producto, el cual puede sufrir importantes modificaciones antes de que se publique la versión comercial. Microsoft no ofrece ninguna garantía, expresa o implícita, con respecto a la información que se ofrece aquí].

La función VmbChannelCreateGpadlFromMdl crea una lista de descriptores de direcciones físicas de invitado (GPADL) que describe un búfer del lado cliente. El GPADL se puede usar en el servidor para acceder al búfer.

Sintaxis

FN_VMB_CHANNEL_CREATE_GPADL_FROM_MDL FnVmbChannelCreateGpadlFromMdl;

NTSTATUS FnVmbChannelCreateGpadlFromMdl(
  VMBCHANNEL Channel,
  UINT32 Flags,
  PMDL Mdl,
  UINT32 StartOffsetWithinMdl,
  UINT32 DataLengthWithinMdl,
  PUINT32 GpadlHandle
)
{...}

Parámetros

Channel

Identificador de un canal.

Flags

Banderas. Los valores posibles son los siguientes:

Valor Significado
VMBUS_CHANNEL_GPADL_READ_ONLY
Si especifica este valor, el búfer es de solo lectura. De lo contrario, el servidor puede escribir en el búfer. Esto no es una medida de seguridad, pero puede mejorar el rendimiento de la instantánea y la migración en vivo.

Mdl

Puntero a una cadena de lista de descriptores de memoria (MDL) que describe el búfer. El búfer puede tener varias piezas, que se encadenan mediante el puntero siguiente de MDL.

StartOffsetWithinMdl

Desplazamiento, en bytes, en la MDL en la que se va a iniciar la asignación.

DataLengthWithinMdl

Longitud, en bytes, de la cadena de búfer. Si este valor es cero (0), use hasta el final de MDL.

GpadlHandle

Identificador GPADL del MDL creado. Envíelo al servidor para usarlo con la función VmbChannelMapGpadl .

Valor devuelto

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

Comentarios

Cuando esta función vuelve, el punto de conexión del servidor puede llamar a VmbChannelMapGpadl, ya que VMBus ya habrá enviado la descripción de GPADL al punto de conexión opuesto y recibió confirmación.

El GPADL debe eliminarse mediante la función VmbChannelDeleteGpadl .

Importante

Esta función se llama a través de la interfaz biblioteca cliente del modo kernel (KMCL) de VMBus, proporcionada por el controlador de bus de Vmbkmcl.sys. Se trata de una función de cliente a la que se accede desde la estructura KMCL_CLIENT_INTERFACE_V1 .

Para obtener más información, vea la sección Comentarios del KMCL_CLIENT_INTERFACE_V1.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10, versión 1803
Encabezado vmbuskernelmodeclientlibapi.h

Consulte también

VmbChannelDeleteGpadl

VmbChannelMapGpadl