Função StorPortInterlockedRemoveHeadList (storport.h)
A rotina StorPortInterlockedRemoveHeadList remove uma entrada do início de uma lista duplamente vinculada de estruturas STOR_LIST_ENTRY .
Sintaxe
ULONG StorPortInterlockedRemoveHeadList(
[in] PVOID HwDeviceExtension,
[in, out] PSTOR_LIST_ENTRY ListHead,
[in, out] PSTOR_LIST_ENTRY *Result,
[in, out] PSTOR_KSPIN_LOCK Lock
);
Parâmetros
[in] HwDeviceExtension
Um ponteiro para a extensão do dispositivo de hardware para o HBA (adaptador de barramento de host).
[in, out] ListHead
Ponteiro para a estrutura STOR_LIST_ENTRY que representa o cabeçalho da lista.
[in, out] Result
Ponteiro para uma estrutura STOR_LIST_ENTRY que representa a entrada removida da lista. Se a lista estiver vazia, a rotina retornará NULL.
[in, out] Lock
Um ponteiro para uma estrutura STOR_KSPIN_LOCK que serve como o bloqueio de rotação usado para sincronizar o acesso à lista. O armazenamento do bloqueio de rotação deve ser residente e deve ter sido inicializado chamando StorPortInitializeSpinLock.
Você deve usar esse bloqueio de rotação somente com as rotinas da ListaXxxStorPortInterlocked .
Retornar valor
StorPortInterlockedRemoveHeadList retorna um dos seguintes códigos de status:
Código de retorno | Descrição |
---|---|
STOR_STATUS_NOT_IMPLEMENTED | Essa função não é implementada no sistema operacional ativo. |
STOR_STATUS_SUCCESS | Os itens da lista foram removidos com êxito ou a lista já está vazia. |
STOR_STATUS_INVALID_PARAMETER | Um ponteiro em ListHead ou Result é NULL. |
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Cabeçalho | storport.h (inclua Storport.h) |