From: Alex Williamson <alex.williamson@redhat.com>
To: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: qemu-devel <qemu-devel@nongnu.org>,
"Michael S. Tsirkin" <mst@redhat.com>
Subject: Re: [Qemu-devel] QEMU PCIe link "negotiation"
Date: Tue, 16 Oct 2018 09:50:53 -0600 [thread overview]
Message-ID: <20181016095053.1ee0727a@w520.home> (raw)
In-Reply-To: <20181016094924.GA2427@work-vm>
On Tue, 16 Oct 2018 10:49:25 +0100
"Dr. David Alan Gilbert" <dgilbert@redhat.com> wrote:
> * Alex Williamson (alex.williamson@redhat.com) wrote:
> > This email is already too long, but I also wonder whether we should
> > consider additional vfio-pci interfaces to trigger a link retraining or
> > allow virtualized access to the physical upstream port config space.
> > Clearly we need to consider multi-function devices and whether there
> > are useful configurations that could benefit from such access. Thanks
> > for reading, please discuss,
>
> I'm not sure about the consequences of the actual link speeds, but I
> worry we'll hit things looking for PCIe v3 features; in particular
> AMD's ROCm code needs PCIe atomics:
>
> https://github.com/RadeonOpenCompute/ROCm_Documentation/blob/master/Installation_Guide/More-about-how-ROCm-uses-PCIe-Atomics.rst
>
> so it feels like getting that to work with passthrough would
> need some negotiation of features.
Taking a quick read through the AtomicOps ECN, I think this is
somewhat orthogonal to the link speeds and widths. Support for acting
as a completer or router of atomic ops is indicated through the DEVCAP2
register in the PCIe capability, it's optional and should not be
assumed by other newer PCIe features. So I think we can tackle it
separately, but indeed it does appear to be a difficult feature to
implement correctly for a VM, at least if we attempt to do it
automatically. We might need to burden the user with this sort of
configuration unless AtomicOps support is so ubiquitous that we can
correctly assume that it's available between arbitrary endpoints which
might be assigned to the same VM. Probably a device option on the
pcie-root-port device to expose atomic op support is possible in the
short term, though more thorough reading of the spec is required.
Thanks,
Alex
next prev parent reply other threads:[~2018-10-16 15:51 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-15 20:18 [Qemu-devel] QEMU PCIe link "negotiation" Alex Williamson
2018-10-16 9:49 ` Dr. David Alan Gilbert
2018-10-16 15:50 ` Alex Williamson [this message]
2018-10-16 15:21 ` Michael S. Tsirkin
2018-10-16 16:46 ` Alex Williamson
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=20181016095053.1ee0727a@w520.home \
--to=alex.williamson@redhat.com \
--cc=dgilbert@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.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;
as well as URLs for NNTP newsgroup(s).