On Saturday 22 September 2007, Rusty Russell wrote: > But now each virtio device has two "struct device"s, not one. And > you've made up a fictional bus to do it. > > Yet for PCI systems, it really is a PCI device; exposing a second bus to > userspace just because we put a layer in our implementation is poor > form. > > Perhaps this is the easiest way of doing it. But it's still wrong. I think it's just a matter of perspective. In the model I'm advocating, the PCI device is not the same as the virtio device but rather a virtio host bridge, very much like USB or SATA works. We could easily have multiple virtio devices behind one PCI device, but since virtual PCI devices are cheap, a one-to-one mapping makes sense for simplicity. Having two struct devices for an actual device is the price to pay for this, but I do think that creating a bus_type for virtio is the logical abstraction and not something we just make up to work around a deficiency in our device reprentation. Arnd <>< _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization