StorPortAcquireMSISpinLock 函数 (storport.h)

StorPortAcquireMSISpinLock 例程 (MSI) 旋转锁获取与指定消息关联的消息信号中断。

语法

ULONG StorPortAcquireMSISpinLock(
  [in] PVOID  HwDeviceExtension,
       ULONG  MessageId,
  [in] PULONG OldIrql
);

参数

[in] HwDeviceExtension

指向主机总线适配器的硬件设备扩展的指针 (HBA) 。

MessageId

调用方获取其旋转锁的消息的标识符。

[in] OldIrql

指向要用于 StorPortReleaseMSISpinLock 的后续调用的原始 IRQL 值的存储的指针。

返回值

StorPortAcquireMSISpinLock 返回以下值之一:

返回代码 说明
STOR_STATUS_NOT_IMPLEMENTED 此函数未在活动操作系统上实现。
STOR_STATUS_SUCCESS 指示已成功获取旋转锁。
STOR_STATUS_INVALID_PARAMETER HwDeviceExtensionNULL

注解

微型端口驱动程序调用 StorPortAcquireMSISpinLock 例程来获取特定消息的 MSI 旋转锁。 若要释放旋转锁,微型端口驱动程序调用 StorPortReleaseMSISpinLock 例程。 仅当 PORT_CONFIGURATION_INFORMATION 结构的InterruptSynchronizationMode 成员设置为 InterruptSynchronizePerMessage 时,微型端口驱动程序才使用此例程为单个消息获取 MSI 旋转锁。

当微型端口需要与所有消息同步时,它可以使用对 StorPortAcquireSpinLock 的一次调用,这将按正确的顺序获取每条消息的锁。

要求

要求
最低受支持的客户端 此例程从 Windows Vista 开始可用。
目标平台 通用
标头 storport.h (包括 Storport.h)
IRQL 任何级别

另请参阅

PORT_CONFIGURATION_INFORMATION

StorPortAcquireSpinLock

StorPortReleaseMSISpinLock