From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:43631) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TA3dy-0002KI-5j for qemu-devel@nongnu.org; Fri, 07 Sep 2012 14:51:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TA3dw-0001aT-5j for qemu-devel@nongnu.org; Fri, 07 Sep 2012 14:51:06 -0400 Received: from mx1.redhat.com ([209.132.183.28]:7481) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TA3dv-0001Zt-D9 for qemu-devel@nongnu.org; Fri, 07 Sep 2012 14:51:04 -0400 Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id q87Ip2T2021667 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Fri, 7 Sep 2012 14:51:02 -0400 Message-ID: <504A425C.9050404@redhat.com> Date: Fri, 07 Sep 2012 20:52:12 +0200 From: Hans de Goede MIME-Version: 1.0 References: <5049DEBB.1030305@redhat.com> In-Reply-To: <5049DEBB.1030305@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PULL for usb-next]: Add support for live-migration to usb-redir List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gerd Hoffmann Cc: "qemu-devel@nongnu.org" 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