From: "Roger Pau Monné" <roger.pau@citrix.com>
To: Frediano Ziglio <frediano.ziglio@cloud.com>
Cc: Alejandro Vallejo <alejandro.vallejo@cloud.com>,
xen-devel@lists.xenproject.org,
Anthony PERARD <anthony.perard@vates.tech>,
Andrew Cooper <andrew.cooper3@citrix.com>
Subject: Re: [PATCH] docs: Add some details on XenServer PCI devices
Date: Tue, 4 Mar 2025 13:29:59 +0100 [thread overview]
Message-ID: <Z8byRwON4Oc23dxS@macbook.local> (raw)
In-Reply-To: <CACHz=ZgmBxNKjA7KFktk-5jcPvWDn6DWpwCUEFzGO9qyJYuZsA@mail.gmail.com>
On Tue, Mar 04, 2025 at 11:17:42AM +0000, Frediano Ziglio wrote:
> On Tue, Mar 4, 2025 at 11:08 AM Roger Pau Monné <roger.pau@citrix.com> wrote:
> >
> > On Tue, Mar 04, 2025 at 10:21:52AM +0000, Alejandro Vallejo wrote:
> > > Hi,
> > >
> > > On Fri Feb 28, 2025 at 3:21 PM GMT, Frediano Ziglio wrote:
> > > > Describe the usage of devices 5853:0002 and 5853:C000.
> > > >
> > > > Signed-off-by: Frediano Ziglio <frediano.ziglio@cloud.com>
> > > > ---
> > > > docs/man/xen-pci-device-reservations.7.pod | 9 +++++++++
> > > > 1 file changed, 9 insertions(+)
> > > >
> > > > diff --git a/docs/man/xen-pci-device-reservations.7.pod b/docs/man/xen-pci-device-reservations.7.pod
> > > > index 9ddf3a18ad..62f3bd2105 100644
> > > > --- a/docs/man/xen-pci-device-reservations.7.pod
> > > > +++ b/docs/man/xen-pci-device-reservations.7.pod
> > > > @@ -10,6 +10,8 @@ use of this is with device ID 0x0001 to advertise the Xen Platform PCI
> > > > device - the presence of this virtual device enables a guest Operating
> > > > System (subject to the availability of suitable drivers) to make use of
> > > > paravirtualisation features such as disk and network devices etc.
> > > > +XenServer, for Windows machines, presents Xen Platform device with device
> > > > +ID 0x0002 instead of 0x0001.
> > >
> > > nit: in the interest of future-proofing the doc 's/presents/may present/'?
> > >
> > > >
> > > > Some Xen vendors wish to provide alternative and/or additional guest drivers
> > > > that can bind to virtual devices[1]. This may be done using the Xen PCI
> > > > @@ -86,4 +88,11 @@ and unplug protocol.
> > > > libxl provides support for creation of a single additional xen-pvdevice.
> > > > See the vendor_device parameter in xl.cfg(5).
> > > >
> > > > +=item 2.
> > > > +
> > > > +XenServer, for Windows machines, presents a device with ID 0xC000.
> > > > +This device is a placeholders for Windows update.
> > > > +Device 0xC000 is presented with a Xen Platform PCI device, usually with ID
> > > > +0x0002.
> > > > +
> > > > =back
> > >
> > > Wouldn't this be better covered under "=item 1"? Device 0xc000 is a
> > > xen-pvdevice, so it could be simplified to a single line of "XenServer uses
> > > device-id=0xc000 for its pvdevice on Windows guests", or something like that.
> >
> > I think it's important to note that c000 always appears in conjunction
> > with 0001 or 0002, and it's not a replacement for either of those
> > devices.
> >
>
> Do you have something more precise in mind? Can you suggest what to write?
I'm fine with your proposed text, my reply was to Alejandro to note
that I think his proposed text was missing information that was on
your original proposal.
"XenServer might present a device with ID 0xC000. Such device is a
placeholder for Windows update usage and is always exposed in
conjunction with a Xen Platform PCI device, usually with ID 0x0002."
I don't care much whether this is on a separate item or not. My
preference would be for adding a second item, as to prevent cluttering
the first one.
I've also looked at xl.cfg, and it mentions:
vendor_device="VENDOR_DEVICE"
Selects which variant of the QEMU xen-pvdevice should be used for this
guest. Valid values are:
none The xen-pvdevice should be omitted. This is the default.
xenserver The xenserver variant of the xen-pvdevice (device-id=C000)
will be specified, enabling the use of XenServer PV drivers in the
guest.
Isn't this wrong, as selecting `xenserver` should instead use
device-id=0002 but not C000? Maybe I'm not understanding how this is
supported to work.
> > Likewise it's important to note that 0001 and 0002 are to my
> > understanding mutually exclusive, and only one of those must be
> > exposed.
>
> Not exactly sure if this is a must or a should. From my testing,
> presenting 2 devices (well, they are mostly the same) works. But, as
> they do the same things it seems reasonable to avoid the duplication.
> It looks like a good recommendation.
I was expecting it to not work, as I imagined Linux would then attempt
to initialize the grant tables twice for example.
Thanks, Roger.
next prev parent reply other threads:[~2025-03-04 12:30 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-28 15:21 [PATCH] docs: Add some details on XenServer PCI devices Frediano Ziglio
2025-03-04 10:21 ` Alejandro Vallejo
2025-03-04 11:08 ` Roger Pau Monné
2025-03-04 11:17 ` Frediano Ziglio
2025-03-04 12:29 ` Roger Pau Monné [this message]
2025-03-04 13:17 ` Frediano Ziglio
2025-03-04 14:40 ` Alejandro Vallejo
2025-03-04 13:22 ` [PATCH v2] " Frediano Ziglio
2025-03-04 14:41 ` Alejandro Vallejo
2025-03-18 10:25 ` Frediano Ziglio
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=Z8byRwON4Oc23dxS@macbook.local \
--to=roger.pau@citrix.com \
--cc=alejandro.vallejo@cloud.com \
--cc=andrew.cooper3@citrix.com \
--cc=anthony.perard@vates.tech \
--cc=frediano.ziglio@cloud.com \
--cc=xen-devel@lists.xenproject.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.