ACK: [PATCH][SRU Zesty] net: thunderx: Fix IOMMU translation faults
Seth Forshee
seth.forshee at canonical.com
Thu Jun 1 20:14:19 UTC 2017
On Tue, May 30, 2017 at 12:15:35PM -0600, dann frazier wrote:
> From: Sunil Goutham <sgoutham at cavium.com>
>
> BugLink: https://bugs.launchpad.net/bugs/1694506
>
> ACPI support has been added to ARM IOMMU driver in 4.10 kernel
> and that has resulted in VNIC interfaces throwing translation
> faults when kernel is booted with ACPI as driver was not using
> DMA API. This patch fixes the issue by using DMA API which inturn
> will create translation tables when IOMMU is enabled.
>
> Also VNIC doesn't have a seperate receive buffer ring per receive
> queue, so there is no 1:1 descriptor index matching between CQE_RX
> and the index in buffer ring from where a buffer has been used for
> DMA'ing. Unlike other NICs, here it's not possible to maintain dma
> address to virt address mappings within the driver. This leaves us
> no other choice but to use IOMMU's IOVA address conversion API to
> get buffer's virtual address which can be given to network stack
> for processing.
>
> Signed-off-by: Sunil Goutham <sgoutham at cavium.com>
> Signed-off-by: David S. Miller <davem at davemloft.net>
> (cherry picked from commit 83abb7d7c91f4ac20e47c3089a10bb93b2ea8994)
> Signed-off-by: dann frazier <dann.frazier at canonical.com>
Clean cherry pick, positive testing. The changes are substantial but
limited to a specific driver.
Acked-by: Seth Forshee <seth.forshee at canonical.com>
More information about the kernel-team
mailing list