StorPortPoFxIdleComponent-Funktion (storport.h)

Die StorPortPoFxIdleComponent-Routine verringert die Anzahl der Aktivierungsreferenzen einer angegebenen Komponente eines Speichergeräts.

Syntax

ULONG StorPortPoFxIdleComponent(
  [in]           PVOID               HwDeviceExtension,
  [in, optional] PSTOR_ADDRESS       Address,
  [in, optional] PSCSI_REQUEST_BLOCK Srb,
  [in]           ULONG               Component,
  [in]           ULONG               Flags
);

Parameter

[in] HwDeviceExtension

Ein Zeiger auf die Hardwaregeräteerweiterung für den Host Bus Adapter (HBA).

[in, optional] Address

Die Adresse einer Speichergeräteeinheit. Dieser Parameter ist NULL , wenn eine Speicheradapterkomponente im Leerlauf ausgeführt wird.

[in, optional] Srb

Der SRB, der die Komponentendeaktivierung auslöst. Dieser Parameter ist NULL , wenn der Miniport intern eine Gerätekomponente im Leerlauf befindet.

[in] Component

Der Index, der die Komponente identifiziert. Dieser Parameter ist ein Index in das Array Components in der STOR_POFX_DEVICE Struktur, die der Miniporttreiber für das Gerät mit einem Aufruf von StorPortInitializePoFxPower registriert hat. Wenn das Komponentenarray N-Elemente enthält, reichen die Komponentenindizes von 0 bis N–1.

[in] Flags

Nicht verwendet. Auf 0 festlegen.

Rückgabewert

Die StorPortPoFxIdleComponent-Routine gibt einen der folgenden status Codes zurück:

Rückgabecode Beschreibung
STOR_STATUS_SUCCESS
Die Referenz zur Speichergeräteaktivierung wurde erfolgreich dekrementiert, und die Komponente befindet sich im Leerlauf.
STOR_STATUS_INVALID_PARAMETER
Entweder HwDeviceExtension oder Device ist NULL.

Oder

Address verweist auf eine ungültige Einheitenadressstruktur.

Oder

Das durch Adresse angegebene Speichergerät wurde nicht gefunden.

Oder

Das Speichergerät ist nicht beim Power Management Framework (PoFx) registriert.

Oder

Der SRB, auf den von Srb verwiesen wird, wird nicht von Storport gesendet.

Oder

Der Flags-Parameter ist nonzero.

STOR_STATUS_INVALID_DEVICE_REQUEST
Der Adapter oder die Einheit unterstützt kein PoFx.

Oder

StorPortPoFxIdleComponent wurde mit einer inaktiven Komponente und einem Srb aufgerufen, für die ein vorheriger Aufruf von StorPortPoFxActivateComponent nicht ausgeführt wurde.

STOR_STATUS_INVALID_IRQL
Die aktuelle IRQL-> DISPATCH_LEVEL.
STOR_STATUS_BUSY
Der aktive Verweis für die Gerätekomponente wurde dekrementiert, aber die Komponente ist weiterhin aktiv.

Hinweise

Derzeit weisen sowohl Adaptergeräte als auch Einheitengeräte die maximale Komponentenanzahl von 1 auf. Der Index in Component muss immer auf 0 festgelegt werden.

Jeder Aufruf von StorPortPoFxIdleComponent muss mit einem vorherigen Aufruf von StorPortPoFxActivateComponent abgeglichen werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows 8.
Zielplattform Universell
Header storport.h
IRQL Any

Weitere Informationen

STOR_POFX_DEVICE

StorPortInitializePoFxPower

StorPortPoFxActivateComponent