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 返回以下状态代码之一:

返回代码 说明
STOR_STATUS_NOT_IMPLEMENTED
此函数未在活动操作系统上实现。
STOR_STATUS_SUCCESS
列表项已成功插入列表或已为空。
STOR_STATUS_INVALID_PARAMETER
SListHeadSListEntryResult 中的指针为 NULL

注解

由调用方分配时,SListEntry 指向的STOR_SLIST_ENTRY结构必须在MEMORY_ALLOCATION_ALIGNMENT边界对齐。 MEMORY_ALLOCATION_ALIGNMENTminiport.h 中定义。

要求

要求
最低受支持的客户端 从 Windows 8 开始可用。
目标平台 通用
标头 storport.h (包括 Storport.h)
IRQL <= DISPATCH_LEVEL

另请参阅

StorPortInitializeSListHead

StorPortInterlockedFlushSList

StorPortInterlockedPopEntrySList

StorPortQueryDepthSList