See 2/2 for explanation why we need this.
Also, .hostdevice uses qemu_open() under the hood which enables Libvirt
to pass FD instead of /dev/bus/usb/... path. However, qemu_open() does
not support getfd style of passing FD (which is what we use), but so
called FD sets which require some more work. I'm working on it as we
speak but I figured, let's fix this bug first and post FD passing after
that.
For curious ones, here is the raw, unclean version with FD sets:
https://gitlab.com/MichalPrivoznik/libvirt/-/commits/qemu_hostdev_alt/
Michal Prívozník (2):
qemu_capabilities: Add QEMU_CAPS_USB_HOST_HOSTDEVICE
qemu: Use .hostdevice attribute for usb-host
src/qemu/qemu_capabilities.c | 10 ++
src/qemu/qemu_capabilities.h | 3 +
src/qemu/qemu_command.c | 21 ++-
.../caps_1.5.3.x86_64.replies | 126 ++++++++++++--
.../caps_1.6.0.x86_64.replies | 126 ++++++++++++--
.../caps_1.7.0.x86_64.replies | 126 ++++++++++++--
.../caps_2.1.1.x86_64.replies | 126 ++++++++++++--
.../caps_2.10.0.aarch64.replies | 134 +++++++++++++--
.../caps_2.10.0.ppc64.replies | 130 ++++++++++++--
.../caps_2.10.0.s390x.replies | 134 +++++++++++++--
.../caps_2.10.0.x86_64.replies | 146 +++++++++++++---
.../caps_2.11.0.s390x.replies | 134 +++++++++++++--
.../caps_2.11.0.x86_64.replies | 146 +++++++++++++---
.../caps_2.12.0.aarch64.replies | 150 +++++++++++++---
.../caps_2.12.0.ppc64.replies | 142 ++++++++++++---
.../caps_2.12.0.s390x.replies | 142 ++++++++++++---
.../caps_2.12.0.x86_64.replies | 162 ++++++++++++++----
.../caps_2.4.0.x86_64.replies | 126 ++++++++++++--
.../caps_2.5.0.x86_64.replies | 130 ++++++++++++--
.../caps_2.6.0.aarch64.replies | 134 +++++++++++++--
.../caps_2.6.0.ppc64.replies | 130 ++++++++++++--
.../caps_2.6.0.x86_64.replies | 130 ++++++++++++--
.../caps_2.7.0.s390x.replies | 130 ++++++++++++--
.../caps_2.7.0.x86_64.replies | 130 ++++++++++++--
.../caps_2.8.0.s390x.replies | 134 +++++++++++++--
.../caps_2.8.0.x86_64.replies | 130 ++++++++++++--
.../caps_2.9.0.ppc64.replies | 130 ++++++++++++--
.../caps_2.9.0.s390x.replies | 134 +++++++++++++--
.../caps_2.9.0.x86_64.replies | 146 +++++++++++++---
.../caps_3.0.0.ppc64.replies | 142 ++++++++++++---
.../caps_3.0.0.riscv32.replies | 138 +++++++++++++--
.../caps_3.0.0.riscv64.replies | 138 +++++++++++++--
.../caps_3.0.0.s390x.replies | 142 ++++++++++++---
.../caps_3.0.0.x86_64.replies | 162 ++++++++++++++----
.../caps_3.1.0.ppc64.replies | 142 ++++++++++++---
.../caps_3.1.0.x86_64.replies | 162 ++++++++++++++----
.../caps_4.0.0.aarch64.replies | 150 +++++++++++++---
.../caps_4.0.0.ppc64.replies | 142 ++++++++++++---
.../caps_4.0.0.riscv32.replies | 138 +++++++++++++--
.../caps_4.0.0.riscv64.replies | 138 +++++++++++++--
.../caps_4.0.0.s390x.replies | 142 ++++++++++++---
.../caps_4.0.0.x86_64.replies | 162 ++++++++++++++----
.../caps_4.1.0.x86_64.replies | 154 ++++++++++++++---
.../caps_4.2.0.aarch64.replies | 154 ++++++++++++++---
.../caps_4.2.0.ppc64.replies | 142 ++++++++++++---
.../caps_4.2.0.s390x.replies | 142 ++++++++++++---
.../caps_4.2.0.x86_64.replies | 154 ++++++++++++++---
.../caps_5.0.0.aarch64.replies | 154 ++++++++++++++---
.../caps_5.0.0.ppc64.replies | 142 ++++++++++++---
.../caps_5.0.0.riscv64.replies | 138 +++++++++++++--
.../caps_5.0.0.x86_64.replies | 154 ++++++++++++++---
.../caps_5.1.0.x86_64.replies | 158 ++++++++++++++---
.../caps_5.1.0.x86_64.xml | 1 +
.../caps_5.2.0.x86_64.replies | 158 ++++++++++++++---
.../caps_5.2.0.x86_64.xml | 1 +
55 files changed, 6110 insertions(+), 982 deletions(-)
--
2.26.2