I've fixed this problem :
virsh: /lib/arm-linux-gnueabihf/libvirt.so.0: version `LIBVIRT_PRIVATE_9.0.0' not found (required by virsh)
now,virsh works if I launch it within the build directory of libvirt :
root@devuan:~/libvirt_build/bin# ./virsh
Welcome to virsh, the virtualization interactive terminal.
Type: 'help' for help with commands
'quit' to quit
Welcome to virsh, the virtualization interactive terminal.
Type: 'help' for help with commands
'quit' to quit
but inside the build directory of libvirt I don't see any virt-manager executable,so I'm forced to run it like this :
root@devuan:~/Desktop/libvirt/build# ./run /usr/bin/virt-manager
and it gives the previous error : no connection driver available for qemu:///system
but the fact that virsh works is a progress ? should I compile virt-manager also from source code ?
On Wed, Aug 23, 2023 at 7:39 PM Mario Marietto <marietto2008@xxxxxxxxx> wrote:
Despite that error,the previous error is still there :Unable to connect to libvirt qemu:///system.
no connection driver available for qemu:///system
Libvirt URI is: qemu:///system
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/connection.py", line 923, in _do_open
self._backend.open(cb, data)
File "/usr/share/virt-manager/virtinst/connection.py", line 171, in open
conn = libvirt.openAuth(self._open_uri,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/libvirt.py", line 147, in openAuth
raise libvirtError('virConnectOpenAuth() failed')
libvirt.libvirtError: no connection driver available for qemu:///systemI'm using qemu 5.1 :root@devuan:~# qemu-system-arm --version
QEMU emulator version 5.1.0 (v5.1.0-dirty)
On Wed, Aug 23, 2023 at 7:30 PM Mario Marietto <marietto2008@xxxxxxxxx> wrote:root@devuan:~/Desktop/libvirt/build# sudo virsh list --allvirsh: /lib/arm-linux-gnueabihf/libvirt.so.0: version `LIBVIRT_PRIVATE_9.0.0' not found (required by virsh)
On Wed, Aug 23, 2023 at 5:43 PM Pavel Hrdina <phrdina@xxxxxxxxxx> wrote:On Wed, Aug 23, 2023 at 03:41:42PM +0200, Mario Marietto wrote:
> Hello Pavel,
>
> It didn't work,but the error was changed. Isn't a bad news :
>
> root@devuan:~/Desktop/libvirt/build# ./run /usr/bin/virt-manager
>
> Unable to connect to libvirt qemu:///system.
>
> no connection driver available for qemu:///system
>
> Libvirt URI is: qemu:///system
>
> Traceback (most recent call last):
> File "/usr/share/virt-manager/virtManager/connection.py", line 923, in
> _do_open
> self._backend.open(cb, data)
> File "/usr/share/virt-manager/virtinst/connection.py", line 171, in open
> conn = libvirt.openAuth(self._open_uri,
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "/usr/lib/python3/dist-packages/libvirt.py", line 147, in openAuth
> raise libvirtError('virConnectOpenAuth() failed')
> libvirt.libvirtError: no connection driver available for qemu:///system
Seems like you've compiled libvirt without qemu support. My guess is
that you are missing dependencies to compile libvirt with QEMU driver.
If you run
apt build-dep libvirt
it should install you dependencies that libvirt from package manager
would need and that is a good starting point to compile your own
libvirt.
> On Wed, Aug 23, 2023 at 2:27 PM Pavel Hrdina <phrdina@xxxxxxxxxx> wrote:
>
> > On Tue, Aug 22, 2023 at 10:23:32PM +0200, Mario Marietto wrote:
> > > After having compiled libvirt from src and having run virt-manager,I get
> > > the error "Libvirtd daemon is not running". Can you give a look at this
> > > picture ?
> > >
> > > https://ibb.co/n6MvDbL
> > >
> > > how to fix it ? thanks.
> >
> > If you managed to start libvirtd using the run script from libvirt build
> > directory you should use the run script to start virt-manager as well.
> >
> > > On Tue, Aug 22, 2023 at 10:17 PM Mario Marietto <marietto2008@xxxxxxxxx>
> > > wrote:
> > >
> > > > [image: Screenshot from 2023-08-22 22-06-30.png]
> > > >
> > > > On Tue, Aug 22, 2023 at 9:44 PM Mario Marietto <marietto2008@xxxxxxxxx
> > >
> > > > wrote:
> > > >
> > > >>
> > > >> Hello,
> > > >>
> > > >> Pavel,are you there ? Please help me to give it the last push. I've
> > fixed
> > > >> the last error like so :
> > > >>
> > > >> root@devuan:~/Desktop/libvirt/build# update-alternatives --set
> > iptables
> > > >> /usr/sbin/iptables-legacy
> > > >> update-alternatives: using /usr/sbin/iptables-legacy to provide
> > > >> /usr/sbin/iptables (iptables) in manual mode
> > > >>
> > > >> but now I have got another error. Anyway,I feel to be close :
> > > >>
> > > >> root@devuan:~/Desktop/libvirt/build# sudo ./run src/virtlockd & sudo
> > > >> ./run src/virtlogd & sudo ./run src/libvirtd
> > > >>
> > > >> 2023-08-22 19:38:49.036+0000: 15002: info : libvirt version: 9.7.0
> > > >>
> > > >> hostname: devuan
> > > >> error : virPidFileAcquirePathFull:409 : Failed to acquire pid file
> > > >> '/root/libvirt_build/var/run/virtlockd.pid': Resource temporarily
> > > >> unavailable
> > > >>
> > > >> On Tue, Aug 22, 2023 at 7:01 PM Mario Marietto <
> > marietto2008@xxxxxxxxx>
> > > >> wrote:
> > > >>
> > > >>> Et voila'. I've recompiled libvirt in this way :
> > > >>>
> > > >>> git clone https://github.com/libvirt/libvirt.git
> > > >>> mkdir -p libvirt_build
> > > >>> cd libvirt
> > > >>> apt install meson xsltproc libgnutls28-dev libxml2-dev rst2pdf
> > > >>> meson build --prefix=$HOME/libvirt_build
> > > >>> ninja -C build
> > > >>> sudo ninja -C build install
> > > >>> cd build
> > > >>> nano vai.sh :
> > > >>>
> > > >>> sudo ./run src/virtlockd & sudo ./run src/virtlogd & sudo ./run
> > > >>> src/libvirtd
> > > >>>
> > > >>> chmod +x vai.sh
> > > >>>
> > > >>> this is the error I get :
> > > >>>
> > > >>> root@devuan:~/Desktop/libvirt/build# ./vai.sh
> > > >>>
> > > >>> 2023-08-22 16:52:34.416+0000: 14725: info : libvirt version: 9.7.0
> > > >>> 2023-08-22 16:52:34.416+0000: 14725: info : hostname: devuan
> > > >>> 2023-08-22 16:52:34.416+0000: 14725: error :
> > > >>> virFirewallApplyRuleDirect:518 : internal error: Failed to apply
> > > >>> firewall rules /usr/sbin/iptables -w --table filter --list-rules:
> > > >>> iptables: Failed to initialize nft: Protocol not supported
> > > >>>
> > > >>> 2023-08-22 16:52:34.428+0000: 14725: error :
> > > >>> virFirewallApplyRuleDirect:518 : internal error: Failed to apply
> > firewall
> > > >>> rules /usr/sbin/ip6tables -w --table filter --list-rules: ip6tables:
> > Failed
> > > >>> to initialize nft: Protocol not supported
> > > >>>
> > > >>> On Tue, Aug 22, 2023 at 6:49 PM Pavel Hrdina <phrdina@xxxxxxxxxx>
> > wrote:
> > > >>>
> > > >>>> On Tue, Aug 22, 2023 at 06:22:25PM +0200, Mario Marietto wrote:
> > > >>>> > In your opinion should I remove virt-manager and all its
> > dependencies
> > > >>>> > before launching the recompilation ?
> > > >>>>
> > > >>>> I would say there is no need to do that if you install libvirt to
> > > >>>> /usr/local as it should be separated from the libvirt installed by
> > > >>>> package manager.
> > > >>>>
> > > >>>> Pavel
> > > >>>>
> > > >>>> >
> > > >>>> > On Tue, Aug 22, 2023 at 6:05 PM Pavel Hrdina <phrdina@xxxxxxxxxx>
> > > >>>> wrote:
> > > >>>> >
> > > >>>> > > On Tue, Aug 22, 2023 at 05:55:30PM +0200, Mario Marietto wrote:
> > > >>>> > > > I have installed virt-manager and all its dependencies
> > grabbing
> > > >>>> the files
> > > >>>> > > > from the devuan 5 repository.
> > > >>>> > > > To recompile libvirt I need to acquire some basic information.
> > > >>>> Which
> > > >>>> > > > version should I compile ? Where is the source code located ?
> > Do
> > > >>>> you have
> > > >>>> > > > some tutorial that explains the necessary steps to do it ?
> > thanks.
> > > >>>> > >
> > > >>>> > > Everything can be found at https://libvirt.org/ not sure which
> > > >>>> version
> > > >>>> > > to pick, you can try latest upstream version but there might be
> > some
> > > >>>> > > dependencies missing in Devuan, if that happens you can
> > fallback to
> > > >>>> > > version that is provided by Devuan.
> > > >>>> > >
> > > >>>> > > For example this link has basic info on how to compile libvirt
> > > >>>> > > https://libvirt.org/compiling.html and here you can find
> > sources
> > > >>>> > > to libvirt https://libvirt.org/downloads.html .
> > > >>>> > >
> > > >>>> > > Pavel
> > > >>>> > >
> > > >>>> > > > On Tue, Aug 22, 2023 at 5:50 PM Pavel Hrdina <
> > phrdina@xxxxxxxxxx>
> > > >>>> wrote:
> > > >>>> > > >
> > > >>>> > > > > On Tue, Aug 22, 2023 at 05:28:50PM +0200, Mario Marietto
> > wrote:
> > > >>>> > > > > > root@devuan:~# virsh domcapabilities --machine virt
> > > >>>> --emulatorbin
> > > >>>> > > > > > /usr/bin/qemu-system-arm
> > > >>>> > > > > >
> > > >>>> > > > > > error: failed to get emulator capabilities
> > > >>>> > > > > > error: KVM is not supported on this platform: Function not
> > > >>>> > > implemented
> > > >>>> > > > > >
> > > >>>> > > > > > BUT it's not true :
> > > >>>> > > > > >
> > > >>>> > > > > > root@devuan:~# kvm-ok
> > > >>>> > > > > >
> > > >>>> > > > > > INFO: /dev/kvm exists
> > > >>>> > > > > > KVM acceleration can be used
> > > >>>> > > > >
> > > >>>> > > > > Are you using libvirt installed using package manager or
> > some
> > > >>>> libvirt
> > > >>>> > > > > that you compiled yorself? Checking libvirt code this error
> > only
> > > >>>> > > happens
> > > >>>> > > > > if libvirt was compiled without KVM, more specifically if
> > header
> > > >>>> > > > > `/usr/include/linux/kvm.h` doesn't exists.
> > > >>>> > > > >
> > > >>>> > > > > I was not able to find any details on Devuan distro so not
> > sure
> > > >>>> how
> > > >>>> > > > > the libvirt package is compiled. You might need to try
> > compiling
> > > >>>> > > libvirt
> > > >>>> > > > > yourself.
> > > >>>> > > > >
> > > >>>> > > > > Pavel
> > > >>>> > > > >
> > > >>>> > > > > >
> > > >>>> > > > > > On Tue, Aug 22, 2023 at 5:27 PM Mario Marietto <
> > > >>>> > > marietto2008@xxxxxxxxx>
> > > >>>> > > > > > wrote:
> > > >>>> > > > > >
> > > >>>> > > > > > > Oh sorry....
> > > >>>> > > > > > >
> > > >>>> > > > > > > On Tue, Aug 22, 2023 at 5:26 PM Mario Marietto <
> > > >>>> > > marietto2008@xxxxxxxxx
> > > >>>> > > > > >
> > > >>>> > > > > > > wrote:
> > > >>>> > > > > > >
> > > >>>> > > > > > >> virsh domcapabilities --machine virt --emulatorbin
> > > >>>> > > > > > >> /path/to/qemu-system-arm
> > > >>>> > > > > > >>
> > > >>>> > > > > > >> error: failed to get emulator capabilities
> > > >>>> > > > > > >> error: Cannot check QEMU binary
> > /path/to/qemu-system-arm:
> > > >>>> No such
> > > >>>> > > > > file or
> > > >>>> > > > > > >> directory
> > > >>>> > > > > > >>
> > > >>>> > > > > > >> On Tue, Aug 22, 2023 at 4:49 PM Pavel Hrdina <
> > > >>>> phrdina@xxxxxxxxxx>
> > > >>>> > > > > wrote:
> > > >>>> > > > > > >>
> > > >>>> > > > > > >>> On Tue, Aug 22, 2023 at 04:05:09PM +0200, Mario
> > Marietto
> > > >>>> wrote:
> > > >>>> > > > > > >>> > Where does libvirt want to find those files ? since
> > the
> > > >>>> qemu
> > > >>>> > > 5.1
> > > >>>> > > > > > >>> > installation files have been placed under /usr/local
> > > >>>> during the
> > > >>>> > > > > command
> > > >>>> > > > > > >>> > make install,I have also copied the firmware files
> > in :
> > > >>>> > > > > > >>> >
> > > >>>> > > > > > >>> > ls /usr/local/share/AAVMF
> > > >>>> > > > > > >>> >
> > > >>>> > > > > > >>> > AAVMF32_CODE.fd AAVMF_CODE.fd
> > > >>>> AAVMF_CODE.snakeoil.fd
> > > >>>> > > > > > >>> AAVMF_VARS.ms.fd
> > > >>>> > > > > > >>> > AAVMF32_VARS.fd AAVMF_CODE.ms.fd AAVMF_VARS.fd
> > > >>>> > > > > > >>> > AAVMF_VARS.snakeoil.fd
> > > >>>> > > > > > >>> >
> > > >>>> > > > > > >>> > but they aren't still recognized.
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> Downgrading libvirt would not help in this specific
> > case.
> > > >>>> Since
> > > >>>> > > > > version
> > > >>>> > > > > > >>> 5.2.0 libvirt uses firmware auto-selection. Libvirt is
> > > >>>> looking
> > > >>>> > > for
> > > >>>> > > > > json
> > > >>>> > > > > > >>> files describing available firmwares. It is
> > documented in
> > > >>>> QEMU
> > > >>>> > > > > project
> > > >>>> > > > > > >>> git repository in `docs/interop/firmware.json`, this
> > > >>>> specific
> > > >>>> > > section
> > > >>>> > > > > > >>> describes where the json files should be placed:
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> # It is recommended to create firmware JSON files
> > (each
> > > >>>> > > containing a
> > > >>>> > > > > > >>> # single @Firmware root element) with a double-digit
> > > >>>> prefix, for
> > > >>>> > > > > example
> > > >>>> > > > > > >>> # "50-ovmf.json", "50-seabios-256k.json", etc, so they
> > > >>>> can be
> > > >>>> > > sorted
> > > >>>> > > > > in
> > > >>>> > > > > > >>> # predictable order. The firmware JSON files should be
> > > >>>> searched
> > > >>>> > > for
> > > >>>> > > > > in
> > > >>>> > > > > > >>> # three directories:
> > > >>>> > > > > > >>> #
> > > >>>> > > > > > >>> # - /usr/share/qemu/firmware -- populated by
> > > >>>> distro-provided
> > > >>>> > > > > firmware
> > > >>>> > > > > > >>> # packages
> > (XDG_DATA_DIRS
> > > >>>> covers
> > > >>>> > > > > > >>> # /usr/share by
> > default),
> > > >>>> > > > > > >>> #
> > > >>>> > > > > > >>> # - /etc/qemu/firmware -- exclusively for sysadmins'
> > > >>>> local
> > > >>>> > > > > additions,
> > > >>>> > > > > > >>> #
> > > >>>> > > > > > >>> # - $XDG_CONFIG_HOME/qemu/firmware -- exclusively
> > for
> > > >>>> per-user
> > > >>>> > > > > local
> > > >>>> > > > > > >>> # additions
> > > >>>> > > (XDG_CONFIG_HOME
> > > >>>> > > > > > >>> # defaults to
> > > >>>> > > $HOME/.config).
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> It doesn't matter where the *CODE* and *VARS* firmware
> > > >>>> files are
> > > >>>> > > > > placed
> > > >>>> > > > > > >>> if the path to these files is correct in the json
> > files
> > > >>>> in one
> > > >>>> > > of the
> > > >>>> > > > > > >>> three directories.
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> Looking at the qemu-efi-arm package it should install
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> /usr/share/AAVMF/AAVMF32_CODE.fd
> > > >>>> > > > > > >>> /usr/share/AAVMF/AAVMF32_VARS.fd
> > > >>>> > > > > > >>> /usr/share/qemu/firmware/60-edk2-arm.json
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> and that should be picked up correctly by libvirt.
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> I don't know what machine types are available for
> > 32bit
> > > >>>> ARM, but
> > > >>>> > > you
> > > >>>> > > > > > >>> should be able to figure that out by running:
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> virsh capabilities | grep canonical
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> it will show only lines with machine types, but my
> > guess
> > > >>>> is on
> > > >>>> > > arm
> > > >>>> > > > > there
> > > >>>> > > > > > >>> should be 'virt' machine type so running
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> virsh domcapabilities --machine virt --emulatorbin
> > > >>>> > > > > > >>> /path/to/qemu-system-arm
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> where you should be able to see the firmware paths if
> > > >>>> they are
> > > >>>> > > > > correctly
> > > >>>> > > > > > >>> detected by libvirt.
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> Pavel
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>> > On Tue, Aug 22, 2023 at 3:55 PM Mario Marietto <
> > > >>>> > > > > marietto2008@xxxxxxxxx
> > > >>>> > > > > > >>> >
> > > >>>> > > > > > >>> > wrote:
> > > >>>> > > > > > >>> >
> > > >>>> > > > > > >>> > > I've already did that :
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > # apt install qemu-efi-arm
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > Reading package lists... Done
> > > >>>> > > > > > >>> > > Building dependency tree... Done
> > > >>>> > > > > > >>> > > Reading state information... Done
> > > >>>> > > > > > >>> > > qemu-efi-arm is already the newest version
> > > >>>> (2022.11-6).
> > > >>>> > > > > > >>> > > qemu-efi-arm set to manually installed.
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > if I don't get wrong,that package do the
> > installation
> > > >>>> of the
> > > >>>> > > > > > >>> following
> > > >>>> > > > > > >>> > > files :
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > root@devuan:/usr/share/AAVMF# ls
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > AAVMF32_CODE.fd AAVMF_CODE.fd
> > > >>>> AAVMF_CODE.snakeoil.fd
> > > >>>> > > > > > >>> > > AAVMF_VARS.ms.fd
> > > >>>> > > > > > >>> > > AAVMF32_VARS.fd AAVMF_CODE.ms.fd AAVMF_VARS.fd
> > > >>>> > > > > > >>> > > AAVMF_VARS.snakeoil.fd
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > in my case they have been correctly placed under
> > > >>>> > > /usr/share/AAVMF
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > I'm not sure that the problem is there. The error
> > > >>>> message
> > > >>>> > > talks
> > > >>>> > > > > > >>> about the
> > > >>>> > > > > > >>> > > libvirt version that could be wrong. What about
> > if I
> > > >>>> > > retrocede
> > > >>>> > > > > > >>> libirt 7.0
> > > >>>> > > > > > >>> > > to 6.9 for example. Why 6.9 ?
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > As you can read below,it supports qemu 5.0 and
> > > >>>> newer...
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > v6.9.0 (2020-11-02)
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > *New features*
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > nodedev: Add support for channel subsystem
> > (CSS)
> > > >>>> > > devices on
> > > >>>> > > > > > >>> S390
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > A CSS device is represented as a parent
> > device
> > > >>>> of a CCW
> > > >>>> > > > > device.
> > > >>>> > > > > > >>> > > This support allows to create vfio-ccw
> > mediated
> > > >>>> devices
> > > >>>> > > > > with
> > > >>>> > > > > > >>> > > virNodeDeviceCreateXML().
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > qemu: Implement memory failure event
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > New event is implemented that is emitted
> > > >>>> whenever a
> > > >>>> > > guest
> > > >>>> > > > > > >>> > > encounters a memory failure.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > qemu: Implement support for <transient/>
> > disks
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > VMs based on the QEMU hypervisor now can use
> > > >>>> > > <transient/>
> > > >>>> > > > > > >>> option
> > > >>>> > > > > > >>> > > for local file-backed disks to configure a
> > disk
> > > >>>> which
> > > >>>> > > > > discards
> > > >>>> > > > > > >>> changes made
> > > >>>> > > > > > >>> > > to it while the VM was active.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > hyperv: implement new APIs
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > The virConnectGetCapabilities(),
> > > >>>> > > virConnectGetMaxVcpus(),
> > > >>>> > > > > > >>> > > virConnectGetVersion(),
> > virDomainGetAutostart(),
> > > >>>> > > > > > >>> > > virDomainSetAutostart(),
> > virNodeGetFreeMemory(),
> > > >>>> > > > > > >>> virDomainReboot(),
> > > >>>> > > > > > >>> > > virDomainReset(), virDomainShutdown(), and
> > > >>>> > > > > > >>> virDomainShutdownFlags()
> > > >>>> > > > > > >>> > > APIs have been implemented in the Hyper-V
> > > >>>> driver.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > bhyve: implement virtio-9p filesystem
> > support
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > Implement virito-9p shared filesystem using
> > the
> > > >>>> > > > > <filesystem/>
> > > >>>> > > > > > >>> > > element.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > qemu: Add support for vDPA network devices.
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > VMs using the QEMU hypervisor can now
> > specify
> > > >>>> vDPA
> > > >>>> > > network
> > > >>>> > > > > > >>> devices
> > > >>>> > > > > > >>> > > using <interface type='vdpa'>. The node
> > device
> > > >>>> APIs
> > > >>>> > > also
> > > >>>> > > > > now
> > > >>>> > > > > > >>> list
> > > >>>> > > > > > >>> > > and provide XML descriptions for vDPA
> > devices.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > cpu_map: Add EPYC-Rome CPU model
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > *It's supported in QEMU 5.0.0 and newer.*
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > cpu: Add a flag for XML validation in CPU
> > > >>>> comparison
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > The virConnectCompareCPU and
> > > >>>> > > virConnectCompareHypervisorCPU
> > > >>>> > > > > > >>> API now
> > > >>>> > > > > > >>> > > support the
> > > >>>> VIR_CONNECT_COMPARE_CPU_VALIDATE_XML flag,
> > > >>>> > > > > which
> > > >>>> > > > > > >>> > > enables XML validation. For virsh, this
> > feature
> > > >>>> is
> > > >>>> > > enabled
> > > >>>> > > > > by
> > > >>>> > > > > > >>> passing the
> > > >>>> > > > > > >>> > > --validate option to the cpu-compare and
> > > >>>> > > > > hypervisor-cpu-compare
> > > >>>> > > > > > >>> > > subcommands.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > qemu: Introduce virtio-balloon free page
> > > >>>> reporting
> > > >>>> > > feature
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > Introduce the optional attribute
> > > >>>> free-page-reporting
> > > >>>> > > for
> > > >>>> > > > > virtio
> > > >>>> > > > > > >>> > > memballoon device. It enables/disables the
> > > >>>> ability of
> > > >>>> > > the
> > > >>>> > > > > QEMU
> > > >>>> > > > > > >>> virtio
> > > >>>> > > > > > >>> > > memory balloon to return unused pages back
> > to
> > > >>>> the
> > > >>>> > > > > hypervisor.
> > > >>>> > > > > > >>> QEMU 5.1 and
> > > >>>> > > > > > >>> > > newer support this feature.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > *Improvements*
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > qemu: Make 'cbitpos' & 'reducedPhysBits'
> > attrs
> > > >>>> optional
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > Libvirt probes the underlying platform in
> > order
> > > >>>> to
> > > >>>> > > fill in
> > > >>>> > > > > > >>> these
> > > >>>> > > > > > >>> > > SEV attributes automatically before
> > launching a
> > > >>>> guest.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > util: support device stats collection for
> > > >>>> SR-IOV VF
> > > >>>> > > hostdev
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > For SR-IOV VF hostdevs, libvirt now supports
> > > >>>> retrieving
> > > >>>> > > > > device
> > > >>>> > > > > > >>> > > traffic stats via the
> > virDomainInterfaceStats
> > > >>>> API and
> > > >>>> > > virsh
> > > >>>> > > > > > >>> > > domifstat.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > logging: Allow disabling log rollover
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > Set max_len=0 in virtlogd.conf to disable
> > log
> > > >>>> rollover.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > qemu: Set noqueue qdisc for TAP devices
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > Set noqueue instead of the former pfifo_fast
> > > >>>> queue
> > > >>>> > > > > discipline
> > > >>>> > > > > > >>> for
> > > >>>> > > > > > >>> > > TAP devices. It will avoid needless cost of
> > > >>>> host CPU
> > > >>>> > > cycles
> > > >>>> > > > > > >>> and thus
> > > >>>> > > > > > >>> > > improve performance.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > qemu: virtiofs can be used without NUMA
> > nodes
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > Virtiofs is supported for the VM without
> > NUMA
> > > >>>> nodes but
> > > >>>> > > > > > >>> configured
> > > >>>> > > > > > >>> > > with shared memory.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > *Bug fixes*
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > hyperv: ensure WQL queries work in all
> > locales
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > Relying on the "Description" field caused
> > > >>>> queries to
> > > >>>> > > fail
> > > >>>> > > > > on
> > > >>>> > > > > > >>> > > non-"en-US" systems. The queries have been
> > > >>>> updated to
> > > >>>> > > avoid
> > > >>>> > > > > > >>> using localized
> > > >>>> > > > > > >>> > > strings.
> > > >>>> > > > > > >>> > > -
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > rpc: Fix virt-ssh-helper detection
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > libvirt 6.8.0 failed to correctly detect the
> > > >>>> > > availability
> > > >>>> > > > > of
> > > >>>> > > > > > >>> the
> > > >>>> > > > > > >>> > > new virt-ssh-helper command on the remote
> > host,
> > > >>>> and
> > > >>>> > > thus
> > > >>>> > > > > always
> > > >>>> > > > > > >>> > > used the fallback instead; this has now been
> > > >>>> fixed.
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > What do you think ? Can you share some
> > documentation
> > > >>>> about
> > > >>>> > > how to
> > > >>>> > > > > > >>> > > recompile an older version of libvirt from source
> > > >>>> code ?
> > > >>>> > > thanks.
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > On Tue, Aug 22, 2023 at 3:35 PM Pavel Hrdina <
> > > >>>> > > phrdina@xxxxxxxxxx
> > > >>>> > > > > >
> > > >>>> > > > > > >>> wrote:
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > >> On Tue, Aug 22, 2023 at 02:49:05PM +0200, Mario
> > > >>>> Marietto
> > > >>>> > > wrote:
> > > >>>> > > > > > >>> > >> > Hello to everyone.
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > I'm trying to use qemu 5.1 with virt-manager
> > and
> > > >>>> libvirt
> > > >>>> > > on
> > > >>>> > > > > my ARM
> > > >>>> > > > > > >>> > >> > chromebook (armhf 32 bit cpu) running with
> > Devuan
> > > >>>> 4 as
> > > >>>> > > host
> > > >>>> > > > > o.s.
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > By default it uses qemu and its
> > > >>>> dependencies,version 5.2.
> > > >>>> > > I
> > > >>>> > > > > > >>> remember
> > > >>>> > > > > > >>> > >> that I
> > > >>>> > > > > > >>> > >> > can't use qemu 5.2,because it doesn't have any
> > > >>>> support for
> > > >>>> > > > > KVM as
> > > >>>> > > > > > >>> you
> > > >>>> > > > > > >>> > >> can
> > > >>>> > > > > > >>> > >> > read here :
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>>
> > > >>>> > >
> > https://lists.gnu.org/archive/html/qemu-devel/2020-09/msg02074.html
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > For this reason,I've compiled qemu 5.1 from
> > > >>>> source. Below
> > > >>>> > > I
> > > >>>> > > > > shown
> > > >>>> > > > > > >>> how I
> > > >>>> > > > > > >>> > >> > have configured everything such as a little
> > piece
> > > >>>> of
> > > >>>> > > > > compilation
> > > >>>> > > > > > >>> > >> messages :
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > # apt install libgtk-3-dev libpulse-dev
> > libgbm-dev
> > > >>>> > > > > > >>> libspice-protocol-dev
> > > >>>> > > > > > >>> > >> > libspice-server-dev libusb-1.0-0-dev
> > libepoxy-dev
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > # cp
> > > >>>> /root/Desktop/qemu-v5.1.0/arm-softmmu/qemu-system-arm
> > > >>>> > > > > > >>> /usr/bin
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > # CFLAGS=-Wno-error ./configure
> > > >>>> > > --target-list=x86_64-softmmu
> > > >>>> > > > > > >>> > >> --enable-opengl
> > > >>>> > > > > > >>> > >> > --enable-gtk --enable-kvm --enable-guest-agent
> > > >>>> > > --enable-spice
> > > >>>> > > > > > >>> > >> --audio-drv-
> > > >>>> > > > > > >>> > >> > list="oss pa" --enable-libusb
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > A little piece of the log messages that I've
> > got
> > > >>>> from the
> > > >>>> > > > > > >>> compilation of
> > > >>>> > > > > > >>> > >> > qemu 5.1 :
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > https://pastebin.ubuntu.com/p/8DYfgPvhXy/
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > These are the resulting versions of my
> > frankenstein
> > > >>>> > > operation
> > > >>>> > > > > :
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > # virsh version
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > Compiled against library: libvirt 7.0.0
> > > >>>> > > > > > >>> > >> > Using library: libvirt 7.0.0
> > > >>>> > > > > > >>> > >> > Using API: QEMU 7.0.0
> > > >>>> > > > > > >>> > >> > Running hypervisor: QEMU 5.1.0
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > At this point I ran virt-manager. It has been
> > able
> > > >>>> to
> > > >>>> > > detect
> > > >>>> > > > > > >>> qemu,but I
> > > >>>> > > > > > >>> > >> get
> > > >>>> > > > > > >>> > >> > the following error :
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > Warning : Failed to set up UEFI.
> > > >>>> > > > > > >>> > >> > The Libvirt version does not support UEFI.
> > > >>>> > > > > > >>> > >> > Install options are limited.
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > (I have also tried upgrading devuan 4 with
> > devuan
> > > >>>> 5 and
> > > >>>> > > I've
> > > >>>> > > > > got
> > > >>>> > > > > > >>> the
> > > >>>> > > > > > >>> > >> same
> > > >>>> > > > > > >>> > >> > error :
> > > >>>> > > > > > >>> > >>
> > > >>>> > > > > > >>> > >> You most likely need to install qemu-efi-arm
> > package
> > > >>>> which
> > > >>>> > > > > should
> > > >>>> > > > > > >>> > >> provide 32bit arm firmware files. The package
> > name
> > > >>>> is a bit
> > > >>>> > > > > > >>> confusing
> > > >>>> > > > > > >>> > >> as it doesn't originate from qemu project, it is
> > > >>>> from edk2
> > > >>>> > > > > project.
> > > >>>> > > > > > >>> > >>
> > > >>>> > > > > > >>> > >> Without this package libvirt most likely doesn't
> > > >>>> report any
> > > >>>> > > efi
> > > >>>> > > > > > >>> files
> > > >>>> > > > > > >>> > >> and that's what causes the error you are hitting.
> > > >>>> > > > > > >>> > >>
> > > >>>> > > > > > >>> > >> Pavel
> > > >>>> > > > > > >>> > >>
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > root@devuan:/usr/bin# virsh version
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > Compiled against library: libvirt 9.0.0
> > > >>>> > > > > > >>> > >> > Using library: libvirt 9.0.0
> > > >>>> > > > > > >>> > >> > Using API: QEMU 9.0.0
> > > >>>> > > > > > >>> > >> > Running hypervisor: QEMU 5.1.0
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > If I change qemu-system-arm vers. 5.1 with
> > > >>>> qemu-system-arm
> > > >>>> > > > > > >>> 5.2,the error
> > > >>>> > > > > > >>> > >> > disappears. So,it seems that libvirt does not
> > > >>>> accept
> > > >>>> > > > > > >>> qemu-system-arm
> > > >>>> > > > > > >>> > >> vers.
> > > >>>> > > > > > >>> > >> > 5.1 or maybe any version lower than 5.2,I don't
> > > >>>> know. But
> > > >>>> > > as
> > > >>>> > > > > I've
> > > >>>> > > > > > >>> said,I
> > > >>>> > > > > > >>> > >> > can't use any version of qemu greater or equal
> > to
> > > >>>> 5.2 on
> > > >>>> > > my
> > > >>>> > > > > > >>> setup. And I
> > > >>>> > > > > > >>> > >> > want to use virt-manager and libvirt because I
> > > >>>> find these
> > > >>>> > > > > tools
> > > >>>> > > > > > >>> very
> > > >>>> > > > > > >>> > >> > comfortable instead of using the "raw" qemu
> > > >>>> parameters. Is
> > > >>>> > > > > there a
> > > >>>> > > > > > >>> > >> > workaround ? Maybe I can recompile virt-manager
> > > >>>> and / or
> > > >>>> > > > > libvirt
> > > >>>> > > > > > >>> from
> > > >>>> > > > > > >>> > >> the
> > > >>>> > > > > > >>> > >> > source code ? but how ? Do you think that it
> > could
> > > >>>> work
> > > >>>> > > if I
> > > >>>> > > > > use
> > > >>>> > > > > > >>> > >> something
> > > >>>> > > > > > >>> > >> > like this (if it exists and if it can be
> > reached
> > > >>>> in some
> > > >>>> > > way)
> > > >>>> > > > > :
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > Compiled against library: libvirt 5.0.0
> > > >>>> > > > > > >>> > >> > Using library: libvirt 5.0.0
> > > >>>> > > > > > >>> > >> > Using API: QEMU 5.0.0
> > > >>>> > > > > > >>> > >> > Running hypervisor: QEMU 5.1.0
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > thanks.
> > > >>>> > > > > > >>> > >> >
> > > >>>> > > > > > >>> > >> > --
> > > >>>> > > > > > >>> > >> > Mario.
> > > >>>> > > > > > >>> > >>
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> > > --
> > > >>>> > > > > > >>> > > Mario.
> > > >>>> > > > > > >>> > >
> > > >>>> > > > > > >>> >
> > > >>>> > > > > > >>> >
> > > >>>> > > > > > >>> > --
> > > >>>> > > > > > >>> > Mario.
> > > >>>> > > > > > >>>
> > > >>>> > > > > > >>
> > > >>>> > > > > > >>
> > > >>>> > > > > > >> --
> > > >>>> > > > > > >> Mario.
> > > >>>> > > > > > >>
> > > >>>> > > > > > >
> > > >>>> > > > > > >
> > > >>>> > > > > > > --
> > > >>>> > > > > > > Mario.
> > > >>>> > > > > > >
> > > >>>> > > > > >
> > > >>>> > > > > >
> > > >>>> > > > > > --
> > > >>>> > > > > > Mario.
> > > >>>> > > > >
> > > >>>> > > >
> > > >>>> > > >
> > > >>>> > > > --
> > > >>>> > > > Mario.
> > > >>>> > >
> > > >>>> >
> > > >>>> >
> > > >>>> > --
> > > >>>> > Mario.
> > > >>>>
> > > >>>
> > > >>>
> > > >>> --
> > > >>> Mario.
> > > >>>
> > > >>
> > > >>
> > > >> --
> > > >> Mario.
> > > >>
> > > >
> > > >
> > > > --
> > > > Mario.
> > > >
> > >
> > >
> > > --
> > > Mario.
> >
> >
> >
>
> --
> Mario.
--Mario.
--Mario.
--
Mario.