Message ID | 5049DEBB.1030305@redhat.com |
---|---|
State | New |
Headers | show |
Hi, On 09/07/2012 01:47 PM, Hans de Goede wrote: > Hi Gerd, > > I'm very happy to present to you a pull-request for usb-redir > live-migration support. I've tested this combined with Spice > seamless migration, and it can successful: > 1) migrate a vm while running "dd if=/dev/zero of=/dev/sdb1 bs=32K" > inside the guest with sdb being a redirect USB-2 mass storage device. > 2) migrate a vm while running camorama inside the vm showing a 720p > video from a redirected USB-2 webcam at 30 fps! > > Note this is based on usb-next rather then master / usb.62, > since one of my patches would otherwise conflict with your recent > ehci changes. > > The following changes since commit a44fd2e0c66b2276f586948702e5ebc7136fdb73: > > usb-host: allow emulated (non-async) control requests without USBPacket (2012-09-06 12:03:41 +0200) > > are available in the git repository at: > > git://people.freedesktop.org/~jwrdegoede/qemu usb-for-gerd > > for you to fetch changes up to 5f5f0f1eaa29ec1cb07fc906acf917d5648b3bcf: > > usb-redir: Add chardev open / close debug logging (2012-09-07 13:44:49 +0200) > > ---------------------------------------------------------------- > Hans de Goede (9): > ehci: Don't set seen to 0 when removing unseen queue-heads > ehci: Walk async schedule before and after migration > ehci: Don't process too much frames in 1 timer tick > usb: Migrate over device speed and speedmask Hmm, thinking more about this, this one is only necessary for usb-redir, since for normal devices both get set from the descriptors of the device + the port speedmask, which are const from a migration pov, so no need to migrate them. And usb-redir itself can re-construct them in its post_load function since it migrates over the usb-redir device_info struct already. So let me respin this patch set, dropping the above patch... > usb-redir: Change cancelled packet code into a generic packet-id queue > usb-redir: Add an already_in_flight packet-id queue > usb-redir: Store max_packet_size in endp_data > usb-redir: Add support for migration and instead set speed and speedmask from this patch. > usb-redir: Add chardev open / close debug logging > > hw/usb.h | 4 +- > hw/usb/bus.c | 2 + > hw/usb/hcd-ehci.c | 61 ++++++- > hw/usb/redirect.c | 482 ++++++++++++++++++++++++++++++++++++++++++++++++++---- > 4 files changed, 508 insertions(+), 41 deletions(-) > Regards, Hans