Функция StorPortInterlockedInsertHeadList (storport.h)
Подпрограмма StorPortInterlockedInsertHeadList атомарно вставляет запись в начале вдвойне связанного списка структур STOR_LIST_ENTRY.
Синтаксис
ULONG StorPortInterlockedInsertHeadList(
[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 или ResultNULL. |
Требования
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
заголовка | storport.h (include Storport.h) |