On Thu, Mar 13, 2025 at 02:08:47PM +0400, Marc-André Lureau wrote:
Hi
On Thu, Mar 13, 2025 at 1:07 PM Martin Kletzander <mkletzan(a)redhat.com> wrote:
>
> On Thu, Mar 13, 2025 at 11:59:41AM +0400, Marc-André Lureau wrote:
> >Hi
> >
> >On Tue, Mar 11, 2025 at 5:28 PM Martin Kletzander <mkletzan(a)redhat.com>
wrote:
> >> So I tried testing it and I found a couple of issues. Those might be on
> >> my side, maybe caused by misunderstanding of it all. First of all
> >> <graphics type='dbus'/> fails with these patches for me even
without
> >
> >How does it fail? (it works on my end)
> >
>
> $ virsh dumpxml fedora39 --xpath //graphics
> <graphics type="dbus"/>
> <graphics type="spice" autoport="yes">
> <listen type="address"/>
> <image compression="off"/>
> </graphics>
>
> $ virsh version
> Compiled against library: libvirt 11.1.0
> Using library: libvirt 11.1.0
> Using API: QEMU 11.1.0
> Running hypervisor: QEMU 9.2.2
>
> $ virsh start fedora39
> Domain 'fedora39' started
>
> $ virsh destroy fedora39
> Domain 'fedora39' destroyed
>
> $ echo 'Start daemon with patches'
> Start daemon with patches
> $ virsh version
> Compiled against library: libvirt 11.1.0
> Using library: libvirt 11.1.0
> Using API: QEMU 11.1.0
> Running hypervisor: QEMU 9.2.2
>
> $ # Same version, but this time with the patch series applied
> $ virsh dumpxml fedora39 --xpath //graphics
> <graphics type="dbus"/>
> <graphics type="spice" autoport="yes">
> <listen type="address"/>
> <image compression="off"/>
> </graphics>
>
> $ virsh start fedora39
> error: Failed to start domain 'fedora39'
> error: operation failed: Failed to connect to dbus-daemon: The connection is closed
Hmm, I don't get this issue. libvirt fails to connect to the just
launched bus (or got closed). This is weird, because we checked
earlier the socket exists.
Could you check dbus log? (for some reason it's not in cfg.logDir, but
in cfg.dbusStateDir - I wonder if we can change that now)
I've bisected it to 28d4703a1f12711ab180e72db08a83bae59941df which is
what I thought was the patch that changed the behaviour.
I also noticed that we do not clean up the dbus-daemon config file when
starting the domain fails.
The diff in the configs is only the path.
If I copy the config, run the dbus-daemon manually, change the socket
path to /tmp/dbus-test.sock, then I can connect to it using:
busctl --address=unix:path=/tmp/dbus-test.sock tree
but if I try that for the libvirt-started dbus-daemon I cannot, and it
does not matter whether that is with or without your patches. So there
is something else going on, but the patch that is trying to keep the
connection to the dbus-daemon exposes it. I guess something is wrong on
my side and there is no reason for it to block these patches.
Even when I added DBUS_VERBOSE=1 to the libvirt-started dbus-daemon the
logfile was empty, I guess I need to recompile dbus with that enabled.
I'll let you know if I figure it out. Not today though.
Have a nice day,
Martin