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 | HwDeviceExtension 为 NULL。 |
注解
微型端口驱动程序调用 StorPortAcquireMSISpinLock 例程来获取特定消息的 MSI 旋转锁。 若要释放旋转锁,微型端口驱动程序调用 StorPortReleaseMSISpinLock 例程。 仅当 PORT_CONFIGURATION_INFORMATION 结构的InterruptSynchronizationMode 成员设置为 InterruptSynchronizePerMessage 时,微型端口驱动程序才使用此例程为单个消息获取 MSI 旋转锁。
当微型端口需要与所有消息同步时,它可以使用对 StorPortAcquireSpinLock 的一次调用,这将按正确的顺序获取每条消息的锁。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 此例程从 Windows Vista 开始可用。 |
目标平台 | 通用 |
标头 | storport.h (包括 Storport.h) |
IRQL | 任何级别 |