From: "'Joerg Roedel'" <jroedel@suse.de>
To: "Deucher, Alexander" <Alexander.Deucher@amd.com>
Cc: "'Joerg Roedel'" <joro@8bytes.org>,
Bjorn Helgaas <bhelgaas@google.com>,
"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Daniel Drake <drake@endlessm.com>,
"Nath, Arindam" <Arindam.Nath@amd.com>
Subject: Re: [PATCH] PCI: Blacklist AMD Stoney GPU devices for ATS
Date: Wed, 29 Mar 2017 00:26:27 +0200 [thread overview]
Message-ID: <20170328222627.GS8329@suse.de> (raw)
In-Reply-To: <BN6PR12MB165289163EA3548B59D0C1ACF7320@BN6PR12MB1652.namprd12.prod.outlook.com>
On Tue, Mar 28, 2017 at 09:13:23PM +0000, Deucher, Alexander wrote:
> If I understand Arindam's patch correctly, it only flushes TLB entries
> for domains in the flush queue whereas the previous behavior was to
> flush all domains. If there was no TLB flush in the queue for that
> domain, could flushing it cause a problem?
No, that can't cause a problem. An io/tlb flush for the device is just a
message that the device should invalidate its own tlb. The device can't
know and doesn't need to know whether the page-tables it used to fill
the tlb really changed.
As it looks, the problem we are seeing here is that we are sending a
large amount of these requests to the GPU device, and wait for its
completion every time. This shouldn't be a problem for ATS devices, but
the GPU here seems to fail at some point and doesn't answer to the
invalidation request anymore, causing the completion-wait loop timeouts.
Arindam's patch makes the high flush-frequency less likely, but it can
still happen, depending on how the GPU is used. So its the best to
keep ATS disabled on the device as it doesn't work correctly and we risk
running in the same problem again when we leave it enabled and just make
the trigger less likely.
Joerg
next prev parent reply other threads:[~2017-03-28 22:26 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-28 12:16 [PATCH] PCI: Blacklist AMD Stoney GPU devices for ATS Joerg Roedel
2017-03-28 20:18 ` Deucher, Alexander
2017-03-28 20:28 ` Joerg Roedel
2017-03-28 20:37 ` Deucher, Alexander
2017-03-28 20:56 ` 'Joerg Roedel'
2017-03-28 21:13 ` Deucher, Alexander
2017-03-28 22:26 ` 'Joerg Roedel' [this message]
2017-03-29 7:15 ` Nath, Arindam
2017-03-29 9:42 ` 'Joerg Roedel'
2017-03-29 9:47 ` Nath, Arindam
2017-03-29 16:21 ` Deucher, Alexander
2017-04-04 16:43 ` Bjorn Helgaas
2017-04-07 12:34 ` Joerg Roedel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170328222627.GS8329@suse.de \
--to=jroedel@suse.de \
--cc=Alexander.Deucher@amd.com \
--cc=Arindam.Nath@amd.com \
--cc=bhelgaas@google.com \
--cc=drake@endlessm.com \
--cc=joro@8bytes.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox