Jamie Lokier wrote:
Anthony Liguori wrote:
Richard W.M. Jones wrote:
Have you considered using a usb serial device? Something attractive
about it is that a productid/vendorid can be specified which means that
you can use that as a method of enumerating devices.
Hot add/remove is supported automagically.
The same applies to PCI: productid/vendorid (and subids);
PCI hotplug is possible though not as native as USB.
What's nice about USB is that HID specifies quite a few functional
generic devices that can be extended to increase functionality. This
means you can implement a more sophisticated usb device that satisfies
the serial interface, provide a special more featureful driver for
Linux, and just use normal serial for Windows.
The downside is that USB emulation stinks.
Here's another idea: Many devices these days have a serial number or
id string. E.g. USB storage, ATA drives, media cards, etc. Linux
these days creates alias device nodes which include the id string in
the device name. E.g. /dev/disks/by-id/ata-FUJITSU_MHV2100BH_NWAQT662615H
So in addition to (or instead of) /dev/vmch0, /dev/vmch1 etc.,
Linux guests could easily generate:
/dev/vmchannel/by-role/clipboard-0
/dev/vmchannel/by-role/gueststats-0
/dev/vmchannel/by-role/vmmanager-0
It's not necessary to do this at the beginning. All that is needed is
to provide enough id information that will appear in /sys/..., so that
that a udev policy for naming devices can be created at some later date.
Well my thinking is that the "clipboard" device actually becomes a USB
serial device. It's easy to enumerate and detect via the existing Linux
infrastructure. Plus usb drivers can be implemented in userspace which
is a nice plus (cross platform too via libusb).
Regards,
Anthony Liguori
-- Jamie
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html