On 18 October 2018 at 15:38, Daniel P. Berrangé <berra...@redhat.com> wrote: > On Thu, Oct 18, 2018 at 03:15:31PM +0100, Peter Maydell wrote: >> On 18 October 2018 at 15:11, Marcel Apfelbaum >> <marcel.apfelb...@gmail.com> wrote: >> > Maybe would be a step toward a clean "socket-device" modeling (what goes >> > where) >> > and also QEMU emulation would be cleaner since in bare metal you cannot >> > plug a PCIe device into a PCI slot and vice-versa or have the same device >> > ID >> > for both a PCI and a PCIe device. >> >> So the command line would then distinguish "-device ne2k-pci" and >> "-device ne2k-pcie", and users need to know whether the machine they're >> using implements PCI or PCIe, and use the right device name accordingly? > > I can understand the rational for splitting the virtio devices, because > of the way they completely change their functionality, even PCI device ID, > depending on whether plugged into a pci or pcie slot. > > I'm not seeing the real world benefit of creating -pci vs -pcie for all > the other non-virtio devices. AFAIK, the existing devices work the same > regardless of what bus they are plugged into. So why would a user/app > want to use such devices ? It feels like extra work for no clear benefit
Well, I don't see the benefit either, which is why I wanted to check whether that was what was being proposed here. Conversely, if we're happy that the ne2k-pci device should be allowed to plug into either PCI or PCIe, it seems wrong to prohibit a virtio PCI device from also being flexible that way, because then virtio would be a weird special case as far as the user is concerned (as the only device where they need to care about PCI vs PCIe). thanks -- PMM