StorPortInterlockedInsertTailList-Funktion (storport.h)
Die StorPortInterlockedInsertTailList routinemäßig einen Eintrag am Ende einer doubly verknüpften Liste STOR_LIST_ENTRY Strukturen einfügt.
Syntax
ULONG StorPortInterlockedInsertTailList(
[in] PVOID HwDeviceExtension,
[in, out] PSTOR_LIST_ENTRY ListHead,
[in, out] PSTOR_LIST_ENTRY ListEntry,
[in, out] PSTOR_LIST_ENTRY *Result,
[in, out] PSTOR_KSPIN_LOCK Lock
);
Parameter
[in] HwDeviceExtension
Ein Zeiger auf die Hardwaregeräteerweiterung für den Hostbusadapter (HBA).
[in, out] ListHead
Zeigen Sie auf die STOR_LIST_ENTRY Struktur, die den Kopf der Liste darstellt.
[in, out] ListEntry
Zeigen Sie auf eine STOR_LIST_ENTRY-Struktur, die den Eintrag darstellt, der in die Liste eingefügt werden soll.
[in, out] Result
Zeigen Sie auf eine STOR_LIST_ENTRY-Struktur, die den ersten Eintrag der Liste darstellt, bevor der neue Eintrag eingefügt wurde.
[in, out] Lock
Ein Zeiger auf eine STOR_KSPIN_LOCK Struktur, die als Drehsperre dient, die zum Synchronisieren des Zugriffs auf die Liste verwendet wird. Der Speicher für die Drehungssperre muss resident sein und muss durch Aufrufen von StorPortInitializeSpinLockinitialisiert werden.
Sie müssen diese Drehsperre nur mit den StorPortInterlockedXxxList Routinen verwenden.
Rückgabewert
StorPortInterlockedInsertHeadList 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 Listenelemente wurden erfolgreich entfernt, oder die Liste ist bereits leer. |
STOR_STATUS_INVALID_PARAMETER | Ein Zeiger in ListHead- oder Result- ist NULL-. |
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | storport.h (include Storport.h) |