StorPortInterlockedPushEntrySList 函式 (storport.h)
將專案插入 Storport 受管理連結清單的前面。 多處理器系統上會同步處理清單的存取權。
語法
ULONG StorPortInterlockedPushEntrySList(
[in] PVOID HwDeviceExtension,
[in, out] PSTOR_SLIST_HEADER SListHead,
[in, out] __drv_aliasesMem PSTOR_SLIST_ENTRY SListEntry,
[out] PSTOR_SLIST_ENTRY *Result
);
參數
[in] HwDeviceExtension
主機總線適配卡的硬體裝置擴充功能指標, (HBA) 。
[in, out] SListHead
STOR_SLIST_HEADER 結構的指標,表示單向連結清單的前端。 此結構被視為不透明,且僅供 Storport 驅動程式使用。
[in, out] SListEntry
STOR_SLIST_ENTRY 結構的指標,表示要插入至單一連結清單的專案。
[out] Result
清單項目指標的指標。 傳回的值是存在於清單前方之上一個專案的指標。 這個先前的專案會保留在從 SListEntry 新增的專案後方清單中。 如果清單是空的,則會以 Result 所指向的值傳回 NULL。
傳回值
StorPortInterlockedPushEntrySList 會傳回下列其中一個狀態代碼:
傳回碼 | Description |
---|---|
|
此函式不會在作用中的操作系統上實作。 |
|
清單專案已成功插入清單中,或已經是空的。 |
|
SListHead、SListEntry 或 Result 中的指標為 NULL。 |
備註
由呼叫端配置時,SListEntry 所指向的STOR_SLIST_ENTRY結構必須對齊MEMORY_ALLOCATION_ALIGNMENT界限。 MEMORY_ALLOCATION_ALIGNMENT 定義於 miniport.h中。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 8 開始提供。 |
目標平台 | Universal |
標頭 | storport.h (包含 Storport.h) |
IRQL | <= DISPATCH_LEVEL |