StorPortGetSystemAddress 函数 (storport.h)
StorPortGetSystemAddress 例程返回系统空间中指定 SCSI 请求块的数据缓冲区的虚拟地址 (SRB) 。
语法
ULONG StorPortGetSystemAddress(
[in] PVOID HwDeviceExtension,
[in] PSCSI_REQUEST_BLOCK Srb,
[out] PVOID *SystemAddress
);
参数
[in] HwDeviceExtension
指向主机总线适配器的硬件设备扩展的指针 (HBA) 。
[in] Srb
指向 SCSI_REQUEST_BLOCK 结构的指针。
[out] SystemAddress
用于接收数据缓冲区的虚拟地址的指针。
返回值
StorPortGetSystemAddress 返回以下状态代码之一:
返回代码 | 说明 |
---|---|
|
此函数未在活动操作系统上实现。 |
|
指示已成功获取系统地址。 |
|
此状态代码由以下条件之一引起:
SRB 没有关联的数据缓冲区。 用于接收虚拟地址的指针为 NULL。 |
|
调用是在无效的 IRQL 上进行的。 |
|
将数据缓冲区映射到系统空间的尝试失败。 |
注解
从 Windows 8 开始,Srb 参数可能指向 SCSI_REQUEST_BLOCK 或 STORAGE_REQUEST_BLOCK。 如果 Srb 的“函数”字段中的函数标识符SRB_FUNCTION_STORAGE_REQUEST_BLOCK,则 SRB 是STORAGE_REQUEST_BLOCK请求结构。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 此例程从 Windows Server 2003 SP2 开始可用。 |
目标平台 | 通用 |
标头 | storport.h (包括 Storport.h) |
IRQL | <=DISPATCH_LEVEL |
DDI 符合性规则 | StorPortIrql (storport) |