[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[updated] Re: [Xen-devel] [PATCH] USB virtualisation (experimental)



All,

Here is an updated USB virtualisation patch.  Things are rather more well 
behaved now.  I just dumped 8 meg of video out of a USB webcam and onto a USB 
pendrive (with both of these peripherals running through the USB virt 
system), no problems at all.

I'm intending to merge this into -unstable fairly soon but in the meantime, 
the patches are against 2.0-testing.

Enjoy,
Mark

On Monday 10 January 2005 17:03, Mark Williamson wrote:
> Hi all,
>
> A number of people have expressed interest in the USB virtualisation code.
> I'm making a patch against 2.0-testing available for those who wish to have
> a play with it.
>
> Description:
> USB virtualisation allows otherwise unprivileged domains to be given
> control of a USB port on the host.  The unprivileged domain sees a virtual
> USB host controller with only the ports it has been granted access to.  For
> instance, you might dedicate a USB webcam to one domain, a USB pendrive to
> another domain and a USB CD-burner to another.
>
> This patch includes the kernel modifications (backend and frontend drivers)
> to 2.4.28 and modifications to the userspace toolset.  This is sufficient
> to set up USB virtualisation for 2.4.28 on xen-2.0-testing.
>
> There are still a few sticky bugs that are really annoying me at the moment
> but it is possible to mount USB flash drives, capture realtime video from a
> webcam, etc. in a domU by virtualising through dom0.
>
> Disclaimers:
> * Don't use it on production systems
> * Don't trust it with data you care about
> * Some USB device drivers may need tweaking - if you have problems with a
> device, let me know
> * YMMV but it works for me ;-)
>
> Installation:
> 1) download the patch from
> http://www.cambridge.intel-research.net/~mwilli2/xen-2.0-testing-usb.patch
> 2) apply to a fresh xen-2.0-testing.bk using
> patch -p1 < xen-2.0-testing-usb.patch
> (say yes to all the SCCS checkouts)
> 3) set up some appropriate kernel configs in
> install/boot/config-2.4.28-xen{0,U}.  You should enable
> CONFIG_XEN_USB_FRONTEND, CONFIG_USB in the configuration for any devices
> you want to run.
> Don't (!) build drivers for devices you want to virtualise into dom0's
> kernel, or dom0 will grab the device before the backend gets a chance to
> export it. 4) build & install the updated kernel & tools on your test
> machine.  Note again you _have_ to use the 2.4 kernels, 2.6 isn't supported
> (yet). 5) for frontend domains, add a
> usb = [ 'port_number', 'port_number', ... ]
> to the config file to give a domain control of those physical USB ports. 
> You can specify ports on a hub by giving the path through the device tree
> e.g. '1/2' = second port on the hub plugged into the first port on the
> host.
>
> Any questions, comments, problems, success reports - let us know!
>
> Cheers,
> Mark
>
>
> -------------------------------------------------------
> The SF.Net email is sponsored by: Beat the post-holiday blues
> Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
> It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxxxx
> https://lists.sourceforge.net/lists/listinfo/xen-devel

Attachment: xen-2.0-testing-usb.patch
Description: Text Data


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.