Dor Laor wrote: > I agree that pci interface isn't ideal, the advantage is that platforms > that do support pci don't have to implement a virtualized bus, and pci > is PnP device. This was the motivation behind using it, especially for > Windows. In understand that requirement, and I think being able to surface paravirtual functions/devices to the guest as PCI device needs to be a key feature. For windows guests.
> Now that more platforms are joining the KVM wagon, we should define a > common bus. PCI was a overkill anyway - its irq are shared and we don't > have to use its io/mmio areas. > Do you guys have something to start with? We do have something basic, our vdev bus. The bad thing is, it is platform specific. I really prefer to aim for an idea that Arnd came up with when discussing this issue: We could define a virtual device bus. We would have platform specific bus implementations which rely on hypercalls, interrupts, and shared memory in the pure paravirtual case. And we need a second bus driver, which is based on a pci device. Just similar to the situation where a PCI device is a USB host adapter. Now functionality like device drivers can sit on top of the abstraction layer. We need to invent a similar abstraction on the hypervisor side, which is a tricky task indeed. The best approach into this direction I have seen so far is not our own vdev thing but Rusty's virtio infrastructure. That's what I think I would start with. so long, Carsten ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel