
On Mon, Jul 28, 2008 at 11:02:45AM -0400, Guido G?nther wrote:
On Fri, Jul 25, 2008 at 04:17:30PM -0400, Guido Günther wrote:
attached is some basic support for host device passthrough. It enables you to passthrough usb devices in qemu/kvm via: On top of the hostdev passthrough (but it's actually totally independent) I added usb massstorage backed by a file. Very handy for installer testing where the preseed data is on the USB stick and the CD/DVD is the installation medium. At the moment I'm using a dummy target "usbdisk" so we don't have to check for target == NULL in that many places. Once qemu handles it we can fill in bus and device address for unplugging. To add a file as usb massstorage to the guest you can use:
<disk type='file' device='disk'> <source file='/foo/bar/usbmass.img'/> <target bus='usb'/> </disk>
The way we do target for other disk types doesn't work so well - others we typically have a device name, eg hda, sdc, xvdf, etc. For VirtIO we let people pass in a dummy device name too 'vda', 'vdb', etc. Only some of the disk buses & guest OS honour these names though - in cases where they're not honoured, they at most provide a unique key, and allow for ordering of disks in our XML. USB will be much like SCSI / VirtIO where the device name in the XML is merely used for ordering, so we should just allow sda, sdb, etc as the target device name. This will avoid having to special case the code in the here too much. Acutally I intended to use the target like target="bus:device" once qemu (and others) support this. The would also help on detach. Would you
On Wed, Jul 30, 2008 at 09:47:00AM +0100, Daniel P. Berrange wrote: prefer: <target bus='usb' target='sda' bus='0001' id='1234'> then? -- Guido