Fonction StorPortInterlockedRemoveHeadList (storport.h)
La routine StorPortInterlockedRemoveHeadList supprime une entrée du début d’une liste doublement liée de structures STOR_LIST_ENTRY .
Syntaxe
ULONG StorPortInterlockedRemoveHeadList(
[in] PVOID HwDeviceExtension,
[in, out] PSTOR_LIST_ENTRY ListHead,
[in, out] PSTOR_LIST_ENTRY *Result,
[in, out] PSTOR_KSPIN_LOCK Lock
);
Paramètres
[in] HwDeviceExtension
Pointeur vers l’extension de périphérique matériel pour l’adaptateur de bus hôte (HBA).
[in, out] ListHead
Pointeur vers la structure STOR_LIST_ENTRY qui représente le début de la liste.
[in, out] Result
Pointeur vers une structure STOR_LIST_ENTRY qui représente l’entrée supprimée de la liste. Si la liste était vide, la routine retourne NULL.
[in, out] Lock
Pointeur vers une structure de STOR_KSPIN_LOCK qui sert de verrou de rotation utilisé pour synchroniser l’accès à la liste. Le stockage du verrou de rotation doit être résident et doit avoir été initialisé en appelant StorPortInitializeSpinLock.
Vous devez utiliser ce verrouillage de rotation uniquement avec les routines StorPortInterlockedXxxList .
Valeur retournée
StorPortInterlockedRemoveHeadList retourne l’un des codes status suivants :
Code de retour | Description |
---|---|
STOR_STATUS_NOT_IMPLEMENTED | Cette fonction n’est pas implémentée sur le système d’exploitation actif. |
STOR_STATUS_SUCCESS | Les éléments de liste ont été supprimés correctement ou la liste est déjà vide. |
STOR_STATUS_INVALID_PARAMETER | Un pointeur dans ListHead ou Result est NULL. |
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | storport.h (inclure Storport.h) |