On Wednesday 06 June 2007, Carsten Otte wrote: > Dor Laor wrote: > > > 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.
I guess, more specifically, you mean a bus_type in Linux terminology. > 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 you suggest having a PCI driver that exports a virtio device for each PCI device it matches? Sounds fine to me, though it goes beyond what I think Rusty had in mind with his latest set of virtio patches. Note that contrary to what I may have said previously, I think that such a virtio device on top of a PCI device need not use any PCI specific APIs (readl/writel, pci_map_*, ioremap_, pci_dev->irq, ...) but could do all of that by means of a hypercall interface. The only real point we want to use PCI for is to find out about the existence of a device and to get an identifier that gets passed to the hypercalls. Arnd <>< ------------------------------------------------------------------------- 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