From: Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
To: svt-core@virtuozzo.com
Cc: den@openvz.org, andrey.drobyshev@virtuozzo.com
Subject: [PATCH QEMU HCI-8.0 v3 00/12] usb-host: support CPR migration
Date: Mon, 14 Sep 2026 22:13:08 +0300 [thread overview]
Message-ID: <20260914-usb-host_v3-v3-0-c43a834ce016@virtuozzo.com> (raw)
v3 fixes the issues reported by Den.
v2 -> v3:
* v2 patch 1 ("migration/cpr: fix use-after-free in cpr_delete_fd()"):
dropped, already applied.
* Patch 1: record the caller's FD before the early exits so every
failure path frees it.
* Patch 2: make the blocker message a complete sentence;
* Patch 3: use cpr_open_fd();
* Patch 5:
- fail .pre_save() when a URB can't be reaped;
- fix a block-comment style warning;
- reword the TD-replay note.
* Patch 6: drop the packet from the re-issue list in
usb_host_cancel_packet();
* Patch 8:
- honour cpr_handed_off in usb_host_close();
- move the forward declarations above the notifier's doc comment.
* Patch 10:
- validate the migrated altsetting and fail the incoming migration
instead of asserting on it;
- check libusb_claim_interface() failures instead of silently
continuing;
- reword commit message.
* Patch 11: gate the resync to cpr_is_incoming().
Signed-off-by: Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
---
Andrey Drobyshev (12):
usb-host: don't leak hostdev FD on open failure #VSTOR-137800
usb-host: add migration blocker for CPR modes #VSTOR-137800
usb-host: preserve hostdev FD during CPR migration #VSTOR-137800
usb-host: factor out usb_host_reap_xfers() #VSTOR-137800
usb-host: drain in-flight URBs across CPR #VSTOR-137800
usb-host: re-issue drained URBs if CPR is aborted #VSTOR-137800
usb-host: skip product-string read on CPR incoming #VSTOR-137800
usb-host: hand off the device across cpr-transfer #VSTOR-137800
usb: migrate the interface altsetting #VSTOR-137800
usb-host: reconfigure endpoints on CPR incoming #VSTOR-137800
hcd-xhci: resync isochronous endpoints after CPR #VSTOR-137800
usb-host: make CPR migration blocker conditional #VSTOR-137800
hw/usb/bus.c | 36 +++++
hw/usb/hcd-xhci.c | 20 +++
hw/usb/host-libusb.c | 435 ++++++++++++++++++++++++++++++++++++++++++++++++---
3 files changed, 471 insertions(+), 20 deletions(-)
---
base-commit: 87f111d087cff956908ccb22daedb596b3734877
change-id: 20260914-usb-host_v3-bbfea86d1dad
Best regards,
--
Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
next reply other threads:[~2026-09-14 19:13 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-14 19:13 Andrey Drobyshev [this message]
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 01/12] usb-host: don't leak hostdev FD on open failure #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 02/12] usb-host: add migration blocker for CPR modes #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 03/12] usb-host: preserve hostdev FD during CPR migration #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 04/12] usb-host: factor out usb_host_reap_xfers() #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 05/12] usb-host: drain in-flight URBs across CPR #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 06/12] usb-host: re-issue drained URBs if CPR is aborted #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 07/12] usb-host: skip product-string read on CPR incoming #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 08/12] usb-host: hand off the device across cpr-transfer #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 09/12] usb: migrate the interface altsetting #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 10/12] usb-host: reconfigure endpoints on CPR incoming #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 11/12] hcd-xhci: resync isochronous endpoints after CPR #VSTOR-137800 Andrey Drobyshev
2026-09-14 19:13 ` [PATCH QEMU HCI-8.0 v3 12/12] usb-host: make CPR migration blocker conditional #VSTOR-137800 Andrey Drobyshev
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260914-usb-host_v3-v3-0-c43a834ce016@virtuozzo.com \
--to=andrey.drobyshev@virtuozzo.com \
--cc=den@openvz.org \
--cc=svt-core@virtuozzo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox