StorPortInterlockedPushEntrySList, fonction (storport.h)
Insère un élément à l’avant d’une liste liée gérée par Storport. L’accès à la liste est synchronisé sur un système multiprocesseur.
Syntaxe
ULONG StorPortInterlockedPushEntrySList(
[in] PVOID HwDeviceExtension,
[in, out] PSTOR_SLIST_HEADER SListHead,
[in, out] __drv_aliasesMem PSTOR_SLIST_ENTRY SListEntry,
[out] PSTOR_SLIST_ENTRY *Result
);
Paramètres
[in] HwDeviceExtension
Pointeur vers l’extension de périphérique matériel pour l’adaptateur de bus hôte (HBA).
[in, out] SListHead
Pointeur vers une structure STOR_SLIST_HEADER qui représente la tête d’une liste liée de manière singly. Cette structure est considérée comme opaque et est utilisée uniquement par le pilote Storport.
[in, out] SListEntry
Pointeur vers une structure STOR_SLIST_ENTRY qui représente l’élément à insérer dans la liste liée de manièreing.
[out] Result
Pointeur vers un pointeur d’entrée de liste. La valeur retournée est un pointeur vers l’élément précédent qui existait à l’avant de la liste. Cet élément précédent reste dans la liste derrière le nouvel élément ajouté à partir de SListEntry. Si la liste est vide, NULL est retournée dans la valeur pointée par Result.
Valeur de retour
StorPortInterlockedPushEntrySList retourne l’un des codes d’état suivants :
Retourner le code | Description |
---|---|
|
Cette fonction n’est pas implémentée sur le système d’exploitation actif. |
|
L’élément de liste a été correctement inséré dans la liste ou est déjà vide. |
|
Un pointeur dans SListHead, SListEntryou Result est NULL. |
Remarques
Lorsqu’elle est allouée par l’appelant, la structure STOR_SLIST_ENTRY pointée par SListEntry doit être alignée à une limite de MEMORY_ALLOCATION_ALIGNMENT. MEMORY_ALLOCATION_ALIGNMENT est défini dans miniport.h.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows 8. |
plateforme cible | Universel |
d’en-tête | storport.h (include Storport.h) |
IRQL | <= DISPATCH_LEVEL |