StorPortInterlockedPushEntrySList-Funktion (storport.h)
Fügt ein Element am Anfang einer von Storport verwalteten, singly verknüpften Liste ein. Der Zugriff auf die Liste wird auf einem Multiprozessorsystem synchronisiert.
Syntax
ULONG StorPortInterlockedPushEntrySList(
[in] PVOID HwDeviceExtension,
[in, out] PSTOR_SLIST_HEADER SListHead,
[in, out] __drv_aliasesMem PSTOR_SLIST_ENTRY SListEntry,
[out] PSTOR_SLIST_ENTRY *Result
);
Parameter
[in] HwDeviceExtension
Ein Zeiger auf die Hardwaregeräteerweiterung für den Host bus adapter (HBA).
[in, out] SListHead
Ein Zeiger auf eine STOR_SLIST_HEADER-Struktur , die den Kopf einer eng verknüpften Liste darstellt. Diese Struktur gilt als undurchsichtig und kann nur vom Storport-Treiber verwendet werden.
[in, out] SListEntry
Ein Zeiger auf eine STOR_SLIST_ENTRY-Struktur , die das Element darstellt, das in die eng verknüpfte Liste eingefügt werden soll.
[out] Result
Ein Zeiger auf einen Listeneintragszeiger. Der zurückgegebene Wert ist ein Zeiger auf das vorherige Element, das oben in der Liste vorhanden war. Dieses vorherige Element verbleibt in der Liste hinter dem Element, das aus SListEntry hinzugefügt wurde. Wenn die Liste leer ist, wird NULL als Wert zurückgegeben, auf den von Result verwiesen wird.
Rückgabewert
StorPortInterlockedPushEntrySList gibt einen der folgenden status Codes zurück:
Rückgabecode | Beschreibung |
---|---|
|
Diese Funktion ist auf dem aktiven Betriebssystem nicht implementiert. |
|
Das Listenelement wurde erfolgreich in die Liste eingefügt oder ist bereits leer. |
|
Ein Zeiger in SListHead, SListEntry oder Result ist NULL. |
Hinweise
Wenn sie vom Aufrufer zugeordnet wird, muss die STOR_SLIST_ENTRY Struktur, auf die SListEntry verweist, an einer MEMORY_ALLOCATION_ALIGNMENT Grenze ausgerichtet werden. MEMORY_ALLOCATION_ALIGNMENT wird in miniport.h definiert.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows 8. |
Zielplattform | Universell |
Header | storport.h (Storport.h einschließen) |
IRQL | <= DISPATCH_LEVEL |