[Adding the Emulex driver developers to Cc for some input on the device,
and why it might use wrong request ids]
On Mon, Aug 25, 2014 at 02:44:59PM +0800, Yijing Wang wrote:
> We found some strange devices in HP C7000 and Huawei Storage Server. These
> devices can not be enumerated by OS, but they still did DMA read/write
> without OS management. Because iommu will not create the DMA mapping for
> these devices, the DMA read/write will be blocked by iommu hardware.
>
> Eg.
> in HP C7000:
> \-[0000:00]-+-00.0 Intel Corporation Xeon E5/Core i7 DMI2
> +-01.0-[11]--
> +-01.1-[02]--
> +-02.0-[04]--+-00.0 Emulex Corporation OneConnect
> 10Gb NIC (be3)
> | +-00.1 Emulex Corporation OneConnect 10Gb NIC
> (be3)
> | +-00.2 Emulex Corporation OneConnect 10Gb iSCSI
> Initiator (be3)
> | \-00.3 Emulex Corporation OneConnect 10Gb iSCSI
> Initiator (be3)
> +-02.1-[12]--
> Kernel only found four devices in bus 0x04, but we found following DMA errors
> in dmesg.
>
> [ 1438.477262] DRHD: handling fault status reg 402
> [ 1438.498278] DMAR:[DMA Write] Request device [04:00.4] fault addr bdf70000
> [ 1438.498280] DMAR:[fault reason 02] Present bit in context entry is clear
> [ 1438.566458] DMAR:[DMA Write] Request device [04:00.5] fault addr bdf70000
> [ 1438.566460] DMAR:[fault reason 02] Present bit in context entry is clear
> [ 1438.635211] DMAR:[DMA Write] Request device [04:00.6] fault addr bdf70000
> [ 1438.635213] DMAR:[fault reason 02] Present bit in context entry is clear
> [ 1438.703849] DMAR:[DMA Write] Request device [04:00.7] fault addr bdf70000
> [ 1438.703851] DMAR:[fault reason 02] Present bit in context entry is clear
>
> This patch add a kernel boot command parameter iommu=pt_force=domain:busnum
> that based iommu identity mapping and force to create identity for all devfn
> in
> the specific bus number to fix this issue.
No! If the device really uses request-ids it shouldn't use please add a
DMA alias quirk instead. A new kernel parameter will not work out of the
box for other users of this device.
Joerg
_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu