Функция StorPortInterlockedInsertTailList (storport.h)
Подпрограмма StorPortInterlockedInsertTailList атомарно вставляет запись в конце списка STOR_LIST_ENTRY структур, связанных с двукратно .
Синтаксис
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
);
Параметры
[in] HwDeviceExtension
Указатель на расширение аппаратного устройства для адаптера шины узла (HBA).
[in, out] ListHead
Указатель на структуру STOR_LIST_ENTRY , представляющую заголовок списка.
[in, out] ListEntry
Указатель на структуру STOR_LIST_ENTRY , представляющую запись для вставки в список.
[in, out] Result
Указатель на структуру STOR_LIST_ENTRY , представляющую первую запись списка перед вставкой новой записи.
[in, out] Lock
Указатель на структуру STOR_KSPIN_LOCK , которая служит в качестве блокировки спина, используемой для синхронизации доступа к списку. Хранилище для спин-блокировки должно быть резидентным и должно быть инициализировано путем вызова StorPortInitializeSpinLock.
Эту блокировку спины необходимо использовать только с подпрограммами StorPortInterlockedXxxList .
Возвращаемое значение
StorPortInterlockedInsertHeadList возвращает один из следующих кодов состояния:
Код возврата | Описание |
---|---|
STOR_STATUS_NOT_IMPLEMENTED | Эта функция не реализована в активной операционной системе. |
STOR_STATUS_SUCCESS | Элементы списка были успешно удалены или список уже пуст. |
STOR_STATUS_INVALID_PARAMETER | Указатель в ListHead или Result имеет значение NULL. |
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Верхняя часть | storport.h (включая Storport.h) |