StorPortAcquireMSISpinLock-Funktion (storport.h)
Die StorPortAcquireMSISpinLock-Routine ruft die MSI-Drehsperre (Message Signaled Interrupt) ab, die der angegebenen Nachricht zugeordnet ist.
Syntax
ULONG StorPortAcquireMSISpinLock(
[in] PVOID HwDeviceExtension,
ULONG MessageId,
[in] PULONG OldIrql
);
Parameter
[in] HwDeviceExtension
Ein Zeiger auf die Hardwaregeräteerweiterung für den Host Bus Adapter (HBA).
MessageId
Der Bezeichner der Nachricht, deren Drehsperre der Aufrufer abruft.
[in] OldIrql
Ein Zeiger auf den Speicher für den ursprünglichen IRQL-Wert, der in einem nachfolgenden Aufruf von StorPortReleaseMSISpinLock verwendet werden soll.
Rückgabewert
StorPortAcquireMSISpinLock gibt einen der folgenden Werte zurück:
Rückgabecode | Beschreibung |
---|---|
STOR_STATUS_NOT_IMPLEMENTED | Diese Funktion ist auf dem aktiven Betriebssystem nicht implementiert. |
STOR_STATUS_SUCCESS | Gibt an, dass die Spinsperre erfolgreich erworben wurde. |
STOR_STATUS_INVALID_PARAMETER | HwDeviceExtension war NULL. |
Hinweise
Ein Miniporttreiber ruft die StorPortAcquireMSISpinLock-Routine auf, um die MSI-Spinsperre für eine bestimmte Nachricht abzurufen. Um die Spinsperre zu lösen, ruft der Miniporttreiber die StorPortReleaseMSISpinLock-Routine auf. Diese Routine wird von einem Miniporttreiber verwendet, um eine MSI-Spinsperre für eine einzelne Nachricht nur abzurufen, wenn das InterruptSynchronizationMode-Element der PORT_CONFIGURATION_INFORMATION-Struktur auf InterruptSynchronizePerMessage festgelegt ist.
Wenn ein Miniport mit allen Nachrichten synchronisiert werden muss, kann er einen Aufruf von StorPortAcquireSpinLock verwenden, der eine Sperre für jede Nachricht in der richtigen Reihenfolge erhält.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Diese Routine ist ab Windows Vista verfügbar. |
Zielplattform | Universell |
Header | storport.h (einschließlich Storport.h) |
IRQL | Beliebige Ebene |