[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] vpci/header: cope with devices not having vpci allocated
On Thu, May 25, 2023 at 11:05:52AM +0200, Jan Beulich wrote: > On 25.05.2023 10:30, Roger Pau Monne wrote: > > When traversing the list of pci devices assigned to a domain cope with > > some of them not having the vpci struct allocated. It's possible for > > the hardware domain to have read-only devices assigned that are not > > handled by vPCI, or for unprivileged domains to have some devices > > handled by an emulator different than vPCI. > > > > Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx> > > --- > > xen/drivers/vpci/header.c | 14 ++++++++++++++ > > 1 file changed, 14 insertions(+) > > > > diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c > > index ec2e978a4e6b..3c1fcfb208cf 100644 > > --- a/xen/drivers/vpci/header.c > > +++ b/xen/drivers/vpci/header.c > > @@ -289,6 +289,20 @@ static int modify_bars(const struct pci_dev *pdev, > > uint16_t cmd, bool rom_only) > > */ > > for_each_pdev ( pdev->domain, tmp ) > > { > > + if ( !tmp->vpci ) > > + /* > > + * For the hardware domain it's possible to have devices > > assigned > > + * to it that are not handled by vPCI, either because those are > > + * read-only devices, or because vPCI setup has failed. > > So this really is a forward looking comment, becoming true only (aiui) > when my patch also makes it in. The r/o part yes, device setup failing is already possible. I think it's fine to have the r/o part added already. > > + * For unprivileged domains we should aim for passthrough > > devices > > + * to be capable of being handled by different emulators, and > > hence > > + * a domain could have some devices handled by vPCI and others > > by > > + * QEMU for example, and the later won't have pdev->vpci > > + * allocated. > > This, otoh, I don't understand: Do we really intend to have pass-through > devices handled by qemu or alike, for PVH? Or are you thinking of hybrid > HVM (some vPCI, some qemu)? I was thinking about hybrid. > Plus, when considering hybrid guests, won't > we need to take into account BARs of externally handled devices as well, > to avoid overlaps? On that scenario we would request non-overlapping BARs for things to work as expected, I think that's already the case for HVM if you mix QEMU and demu for the same domain. > In any event, until the DomU side picture is more clear, I'd suggest we > avoid making statements pinning down expectations. That said, you're the > maintainer, so if you really want it like this, so be it. OK, I don't have a strong opinion, so I'm fine with dropping the "For unprivileged domains ..." paragraph. Would you like me to resend with that dropped? I assume you also want the commit message adjusted to not mention unprivileged domains? Thanks, Roger.
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |