On 18 October 2018 at 15:38, Daniel P. Berrangé <address@hidden> wrote:
On Thu, Oct 18, 2018 at 03:15:31PM +0100, Peter Maydell wrote:
On 18 October 2018 at 15:11, Marcel Apfelbaum
<address@hidden> 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).