RE: [PATCH v2] PCI: Add ATS-disable quirk for AMD Stoney GPUs

From: Deucher, Alexander
Date: Thu Jun 15 2017 - 14:14:07 EST


> -----Original Message-----
> From: Samuel Sieb [mailto:samuel@xxxxxxxx]
> Sent: Thursday, June 15, 2017 1:02 PM
> To: Joerg Roedel; Bjorn Helgaas
> Cc: linux-pci@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Daniel Drake;
> Deucher, Alexander; David Woodhouse
> Subject: Re: [PATCH v2] PCI: Add ATS-disable quirk for AMD Stoney GPUs
>
> On 06/15/2017 07:04 AM, Joerg Roedel wrote:
> > Hi Bjorn,
> >
> > On Fri, Apr 07, 2017 at 04:32:18PM +0200, Joerg Roedel wrote:
> >> From: Joerg Roedel <jroedel@xxxxxxx>
> >>
> >> ATS is broken on this hardware and causes IOMMU stalls and
> >> system failure. Disable ATS on these devices to make them
> >> usable again with IOMMU enabled.
> >>
> >> Note that the commit in the Fixes-tag is not buggy, it
> >> just uncovers the problem in the hardware by increasing
> >> the ATS-flush rate.
> >>
> >> Fixes: b1516a14657a ('iommu/amd: Implement flush queue')
> >> Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>
> >> ---
> >> drivers/pci/quirks.c | 19 +++++++++++++++++++
> >> 1 file changed, 19 insertions(+)
> >
> > Any more objections on this patch? Please let me know if you want to
> > have something changed.
>
> The other patch seems to fix this issue without disabling ATS. Isn't
> that better?

I talked to our validation team and ATS was validated on Stoney, so this patch is just working around something else. The other patch fixes it and is a valid optimization (it should be applied eventually), but apparently the current behavior is allowed even if it's now optimal. I'm not really an ATS expert.

Alex