Compartir a través de


Función StorPortGetPfns (storport.h)

Un minipuerto puede llamar al StorPortGetPfns para recuperar los números de marco de página (Pfns) para la memoria descrita por la MDL especificada (lista de descriptores de memoria) asociada a un SRB.

Sintaxis

ULONG StorPortGetPfns(
  [in]  PVOID               HwDeviceExtension,
  [in]  PSCSI_REQUEST_BLOCK Srb,
  [in]  PVOID               Mdl,
  [out] PVOID               *Pfns,
  [out] ULONG               *PfnCount,
  [out] ULONG               *StartingOffset
);

Parámetros

[in] HwDeviceExtension

Puntero a la extensión de dispositivo de hardware. Se trata de un área de almacenamiento por HBA que el controlador de puerto asigna e inicializa en nombre del controlador de miniport.

Los controladores de miniportar suelen almacenar información específica de HBA en esta extensión, como el estado del HBA y los intervalos de acceso asignados para el HBA. Esta área está disponible para el controlador de miniport en el DeviceExtension->HwDeviceExtension miembro del objeto de dispositivo para el HBA inmediatamente después de que el controlador de miniport llame a StorPortInitialize. El controlador de puerto libera esta memoria cuando quita el dispositivo.

[in] Srb

Puntero al bloque de solicitud SCSI de origen (SRB). A partir de Windows 8, el parámetro Srb puede apuntar a SCSI_REQUEST_BLOCK o STORAGE_REQUEST_BLOCK.

[in] Mdl

Puntero a la MDL para la que se solicitan Pfns. Solo se admiten los MDL obtenidos con StorPortGetOriginalMdl o storPortGetDataInBufferMdl.

[out] Pfns

Puntero a una matriz de Pfns que están asociadas a MDL. Los autores de llamadas no deben modificar, actualizar ni liberar la lista.

[out] PfnCount

El número de Pfns de la matriz a la que apunta Pfns.

[out] StartingOffset

Especifica el desplazamiento de bytes dentro de la página inicial del búfer descrito por el MDL especificado.

Valor devuelto

storPortGetPfns devuelve uno de los siguientes códigos de estado:

Código devuelto Descripción
STOR_STATUS_NOT_IMPLEMENTED Esta función no se implementa en el sistema operativo activo.
STOR_STATUS_SUCCESS La función se completó correctamente.
STOR_STATUS_INVALID_PARAMETER Un puntero a uno de los parámetros es null.

Requisitos

Requisito Valor
de la plataforma de destino de Universal
encabezado de storport.h

Consulte también

StorPortGetDataInBufferMdl

StorPortGetOriginalMdl

StorPortInitialize