Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The StorPortAcquireMSISpinLock routine acquires the message signaled interrupt (MSI) spin lock that is associated with the specified message.
Syntax
ULONG StorPortAcquireMSISpinLock(
[in] PVOID HwDeviceExtension,
ULONG MessageId,
[in] PULONG OldIrql
);
Parameters
[in] HwDeviceExtension
A pointer to the hardware device extension for the host bus adapter (HBA).
MessageId
The identifier of the message whose spin lock the caller acquires.
[in] OldIrql
A pointer to the storage for the original IRQL value to be used in a subsequent call to StorPortReleaseMSISpinLock.
Return value
StorPortAcquireMSISpinLock returns one of the following values:
Return code | Description |
---|---|
STOR_STATUS_NOT_IMPLEMENTED | This function is not implemented on the active operating system. |
STOR_STATUS_SUCCESS | Indicates that the spin lock was acquired successfully. |
STOR_STATUS_INVALID_PARAMETER | The HwDeviceExtension was NULL. |
Remarks
A miniport driver calls the StorPortAcquireMSISpinLock routine to acquire the MSI spin lock for a particular message. To release the spin lock, the miniport driver calls the StorPortReleaseMSISpinLock routine. This routine is used by a miniport drivers to acquire an MSI spin lock for an individual message only when the InterruptSynchronizationMode member of the PORT_CONFIGURATION_INFORMATION structure is set to InterruptSynchronizePerMessage.
When a miniport needs to synchronize with all messages, it can use one call to StorPortAcquireSpinLock which will acquire a lock for each message in the proper order.
Requirements
Requirement | Value |
---|---|
Minimum supported client | This routine is available starting with Windows Vista. |
Target Platform | Universal |
Header | storport.h (include Storport.h) |
IRQL | Any level |