From: Thomas Lamprecht <t.lamprecht@proxmox.com>
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>,
Dominik Csapak <d.csapak@proxmox.com>
Subject: [pve-devel] applied-series: [PATCH qemu-server/pve-manager] use qemu-xhci for new guests
Date: Thu, 10 Nov 2022 18:02:53 +0100 [thread overview]
Message-ID: <145676d3-eed1-e4aa-a2fd-fca339bd0e40@proxmox.com> (raw)
In-Reply-To: <20221110143600.258897-1-d.csapak@proxmox.com>
Am 10/11/2022 um 15:35 schrieb Dominik Csapak:
> qemu-xhci is to be preferred to nec-usb-xhci, but for compatibility
> reasons, only use it for machine types >= 7.1 and ostypes l26 and
> windows > 7 (older os' don't support it)
> (depending on that machine version should be ok as long as we don't
> roll out qemu 7.1 before applying this series)
>
> With that controller we can specify how many ports we want (we chose 15,
> the maximum) and for those guests we now set the usb devices on fixed
> ports (usb0 gets port 1 and so on) so that we can enable hotplugging
> too. Lastly, since we set the maximum of 15 ports, we can safely
> use up to 14 of them (without qemu plugging a usb-hub in between)
>
> For hotplugging we check the actual running qemu machine version, but
> the gui only uses a heuristic based on the config (still good enough
> since it allows more than the back end)
>
> For guests with older machine types or other ostypes, the current
> behaviour remains
>
> Note: patch 1,2 of qemu-server are only cleanups/refactor that could be
> applied independently (no behaviour change intended)
> patch 1 of pve-manager could be squashed into 2, but if we decide
> not to use that heuristic in the gui, can be applied separately
>
> qemu-server:
>
> Dominik Csapak (7):
> print_tabletdevice_full: make use of $q35 variable
> move 'windows_version' to Helpers
> USB: print_usbdevice_full: error out on invalid configuration
> USB: use machine_type_is_q35 instead of regex
> fix #4324: USB: use qemu-xhci for machine versions >= 7.1
> USB: increase max usb devices to 14 for newer machine version and
> ostype
> fix #3271: USB: allow usb hotplugging for modern guests
>
> PVE/API2/Qemu.pm | 2 +-
> PVE/QemuServer.pm | 134 ++++++++++++++++------------
> PVE/QemuServer/Cloudinit.pm | 3 +-
> PVE/QemuServer/Helpers.pm | 19 ++++
> PVE/QemuServer/USB.pm | 94 ++++++++++++++-----
> test/cfg2cmd/qemu-xhci-7.1.conf | 12 +++
> test/cfg2cmd/qemu-xhci-7.1.conf.cmd | 34 +++++++
> 7 files changed, 220 insertions(+), 78 deletions(-)
> create mode 100644 test/cfg2cmd/qemu-xhci-7.1.conf
> create mode 100644 test/cfg2cmd/qemu-xhci-7.1.conf.cmd
>
> pve-manager:
>
> Dominik Csapak (2):
> ui: USBInputPanel: use correct maximum usb index
> ui: qemu: increase available usb ports depending on machine and ostype
>
> www/manager6/Utils.js | 53 ++++++++++++++++++++++++++++++-
> www/manager6/qemu/HardwareView.js | 7 +++-
> www/manager6/qemu/USBEdit.js | 7 +++-
> 3 files changed, 64 insertions(+), 3 deletions(-)
>
applied, with a bit of code cleanup as talked off-list, thanks!
prev parent reply other threads:[~2022-11-10 17:03 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-10 14:35 [pve-devel] " Dominik Csapak
2022-11-10 14:35 ` [pve-devel] [PATCH qemu-server 1/7] print_tabletdevice_full: make use of $q35 variable Dominik Csapak
2022-11-10 14:35 ` [pve-devel] [PATCH qemu-server 2/7] move 'windows_version' to Helpers Dominik Csapak
2022-11-10 14:35 ` [pve-devel] [PATCH qemu-server 3/7] USB: print_usbdevice_full: error out on invalid configuration Dominik Csapak
2022-11-10 14:35 ` [pve-devel] [PATCH qemu-server 4/7] USB: use machine_type_is_q35 instead of regex Dominik Csapak
2022-11-10 14:35 ` [pve-devel] [PATCH qemu-server 5/7] fix #4324: USB: use qemu-xhci for machine versions >= 7.1 Dominik Csapak
2022-11-10 14:35 ` [pve-devel] [PATCH qemu-server 6/7] USB: increase max usb devices to 14 for newer machine version and ostype Dominik Csapak
2022-11-10 14:35 ` [pve-devel] [PATCH qemu-server 7/7] fix #3271: USB: allow usb hotplugging for modern guests Dominik Csapak
2022-11-10 14:35 ` [pve-devel] [PATCH manager 1/2] ui: USBInputPanel: use correct maximum usb index Dominik Csapak
2022-11-10 14:36 ` [pve-devel] [PATCH manager 2/2] ui: qemu: increase available usb ports depending on machine and ostype Dominik Csapak
2022-11-10 14:39 ` [pve-devel] [PATCH qemu-server/pve-manager] use qemu-xhci for new guests Dominik Csapak
2022-11-10 17:02 ` Thomas Lamprecht [this message]
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=145676d3-eed1-e4aa-a2fd-fca339bd0e40@proxmox.com \
--to=t.lamprecht@proxmox.com \
--cc=d.csapak@proxmox.com \
--cc=pve-devel@lists.proxmox.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