[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [virtio-comment] Re: [PATCH 09/11] transport-pci: Describe PCI MMR dev config registers
On Wed, Apr 12, 2023 at 1:01âPM Parav Pandit <parav@nvidia.com> wrote: > > > > > From: Jason Wang <jasowang@redhat.com> > > Sent: Wednesday, April 12, 2023 12:51 AM > > > > Yes, but this proposal will drag us back to legacy, isn't it? > No. This proposal supports the legacy transitional pci device. > > > Or if it is used only in > > the vitalization environment, what's the advantages of doing it over simply > > mediating on top of modern device? > > > Because the spec for modern device do not allow it. Discussed in these threads. Can you please tell me which part of the spec disallows it? There's a long discussion in the virtualization-list a few months ago about mediating legacy devices on top of modern. We don't see any blocker do you? > > > 1) legacy MMIO bar: spec changes, hypervisor mediation > > 2) modern device: no spec changes, hypervisor mediation > > > This question repeats the same discussion occurred in this patch series. > You might want to refer it again to avoid repeating all over again. No, I think you miss the point that modern devices could be used for mediating legacy devices. > > > 1) it's better not invent any of new facilities for legacy > > 2) if legacy is insisted, allow MMIO BAR0 is much simpler and better > You have missed few emails. :) > MMIO BAR is proposed here and it is not limited to BAR 0. In the context of mediation, why do you need that flexibility? > It is left for the device to either map something in existing BAR or use BAR 0. > Because PCI has only 3 BARs. > A device may want to support legacy and non-legacy functionality both at the same time. This is perfectly fine, this is how Qemu did: /* * virtio pci bar layout used by default. * subclasses can re-arrange things if needed. * * region 0 -- virtio legacy io bar * region 1 -- msi-x bar * region 2 -- virtio modern io bar (off by default) * region 4+5 -- virtio modern memory (64bit) bar * */ > So better not to hard wire for BAR 0. Using BAR0 doesn't prevent you from adding modern capabilities in BAR0, no? Thanks
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]