Função StorPortAcquireMSISpinLock (storport.h)
A rotina StorPortAcquireMSISpinLock adquire o bloqueio de rotação msi (interrupção sinalizada por mensagem) associado à mensagem especificada.
Sintaxe
ULONG StorPortAcquireMSISpinLock(
[in] PVOID HwDeviceExtension,
ULONG MessageId,
[in] PULONG OldIrql
);
Parâmetros
[in] HwDeviceExtension
Um ponteiro para a extensão do dispositivo de hardware para o HBA (adaptador de barramento de host).
MessageId
O identificador da mensagem cujo bloqueio de rotação o chamador adquire.
[in] OldIrql
Um ponteiro para o armazenamento do valor IRQL original a ser usado em uma chamada subsequente para StorPortReleaseMSISpinLock.
Valor de retorno
StorPortAcquireMSISpinLock retorna um dos seguintes valores:
Código de retorno | Descrição |
---|---|
STOR_STATUS_NOT_IMPLEMENTED | Essa função não é implementada no sistema operacional ativo. |
STOR_STATUS_SUCCESS | Indica que o bloqueio de rotação foi adquirido com êxito. |
STOR_STATUS_INVALID_PARAMETER | O HwDeviceExtension foi NULL . |
Observações
Um driver de miniporto chama a rotina StorPortAcquireMSISpinLock para adquirir o bloqueio de rotação msi para uma mensagem específica. Para liberar o bloqueio de rotação, o driver de miniporto chama a rotinaStorPortReleaseMSISpinLock. Essa rotina é usada por drivers de miniporto para adquirir um bloqueio de rotação MSI para uma mensagem individual somente quando o membro InterruptSynchronizationMode da estrutura PORT_CONFIGURATION_INFORMATION está definido como InterruptSynchronizePerMessage.
Quando um miniporto precisa ser sincronizado com todas as mensagens, ele pode usar uma chamada para StorPortAcquireSpinLock que adquirirá um bloqueio para cada mensagem na ordem adequada.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Essa rotina está disponível a partir do Windows Vista. |
da Plataforma de Destino | Universal |
cabeçalho | storport.h (inclua Storport.h) |
IRQL | Qualquer nível |