特殊场景
除了SVA这种默认情况以外,WD加速器用户态库也支持以下两种特殊场景,但是请注意支持这些场景的接口都不是趋势,而且由于不支持IOMMU的方案存在安全问题,后续当SVA成为主流,这些接口可能会移除。
- 特殊场景1:不支持SVA但是使能IOMMU,且所有注册到UACCE框架的设备都是支持PASID和支持IOMMU的场景。
- 特殊场景2:不支持SVA,所有注册到UACCE框架的设备都不支持IOMMU的场景。
特殊场景1
在这种场景下,硬件不能直接访问用户态的VA。可以通过默认使用场景-支持SVA的场景中的三个命令条件判断的运行结果是否如下,来判断是否是特殊场景1:
- 不支持SVA:SVA命令返回结果1。
- 支持IOMMU:IOMMU命令返回0,
- 注册到UACCE框架的设备都支持PASID和支持IOMMU:cat /sys/class/uacce/设备名/attrs/flags命令结果和3与之后的结果为2。
特殊场景2
在这种场景下,硬件不能直接访问用户态的VA,且硬件加速器用户态驱动必须把加速器硬件可见的地址传给硬件。可以通过默认使用场景-支持SVA的场景中的两个命令条件判断的运行结果是否如下,来判断是否是特殊场景2:
- 不支持SVA:SVA命令返回结果1。
- 注册到UACCE框架的设备都不支持IOMMU:cat /sys/class/uacce/设备名/attrs/flags命令结果和1与之后的结果为0。
父主题: 介绍