Freigeben über


StorPortGetPfns-Funktion (storport.h)

Ein Miniport kann die StorPortGetPfns- aufrufen, um die Seitenframenummern (Pfns) für den speicher abzurufen, der durch die angegebene MDL-Liste (Speicherbeschreibungsliste) beschrieben wird, die einem SRB zugeordnet ist.

Syntax

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

Parameter

[in] HwDeviceExtension

Ein Zeiger auf die Hardwaregeräteerweiterung. Dies ist ein HBA-Speicherbereich, den der Porttreiber im Namen des Miniporttreibers zuweist und initialisiert.

Miniporttreiber speichern in der Regel HBA-spezifische Informationen in dieser Erweiterung, z. B. den Zustand der HBA und die zugeordneten Zugriffsbereiche für die HBA. Dieser Bereich steht dem Miniporttreiber im DeviceExtension->HwDeviceExtension Mitglied des Geräteobjekts für die HBA unmittelbar nach dem Aufruf StorPortInitializezur Verfügung. Der Porttreiber gibt diesen Speicher frei, wenn es das Gerät entfernt.

[in] Srb

Ein Zeiger auf den Quell-SCSI-Anforderungsblock (SRB). Ab Windows 8 kann der parameter Srb entweder auf SCSI_REQUEST_BLOCK oder STORAGE_REQUEST_BLOCKverweisen.

[in] Mdl

Ein Zeiger auf die MDL, für die Pfns angefordert werden. Nur MDLs, die mit StorPortGetOriginalMdl oder StorPortGetDataInBufferMdl abgerufen werden.

[out] Pfns

Zeigen Sie auf ein Array von Pfns, die der MDL zugeordnet sind. Anrufer dürfen die Liste nicht ändern, aktualisieren oder freigeben.

[out] PfnCount

Die Anzahl der Pfns im Array, auf das pfns verweist.

[out] StartingOffset

Gibt den Byteoffset innerhalb der ersten Seite des puffers an, der von der angegebenen MDL beschrieben wird.

Rückgabewert

StorPortGetPfns gibt einen der folgenden Statuscodes zurück:

Rückgabecode Beschreibung
STOR_STATUS_NOT_IMPLEMENTED Diese Funktion ist nicht auf dem aktiven Betriebssystem implementiert.
STOR_STATUS_SUCCESS Die Funktion wurde erfolgreich abgeschlossen.
STOR_STATUS_INVALID_PARAMETER Ein Zeiger auf einen der Parameter ist NULL-.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- storport.h

Siehe auch

StorPortGetDataInBufferMdl

StorPortGetOriginalMdl

StorPortInitialize