Description of problem: Upstream is deprecating query-events & will ultimately remove it: https://lists.gnu.org/archive/html/qemu-devel/2019-02/msg01658.html This is not an immediate problem, but eventually 8.x will rebase to a QEMU version where this command is gone, and libvirt should be prepared for that in advance. Version-Release number of selected component (if applicable): libvirt-5.0.0
I'm working on a patch
commit 22d7222ec0424f7c0355718bd70f613c00729852 (origin/master, origin/HEAD, master) Author: Peter Krempa <pkrempa> Date: Thu Feb 7 13:03:37 2019 +0100 qemu: caps: Don't call 'query-events' when we probe events from QMP schema Avoid calling the command and fix test fallout. https://bugzilla.redhat.com/show_bug.cgi?id=1673320 Signed-off-by: Peter Krempa <pkrempa> Fixed upstream: commit 398d5766b30819c56d6d5e280678dd273f6585f7 Author: Peter Krempa <pkrempa> Date: Thu Feb 7 12:50:27 2019 +0100 qemu: caps: Probe events from 'query-qmp-schema' rather than 'query-events' QEMU plans to deprecate 'query-events' as it's non-extensible. Events are also described by 'query-qmp-schema' so we can use that one instead. This patch adds detection of events to virQEMUCapsProbeQMPSchemaCapabilities using the same structure declaring them for the old approach (virQEMUCapsEvents). This is possible as the name is the same in the QMP schema and our detector supports that trivially. For any complex queries virQEMUCapsQMPSchemaQueries can be used in the future. For now we still call 'query-events' and discard the result so that it's obvious that the tests pass. This will be cleaned up later. https://bugzilla.redhat.com/show_bug.cgi?id=1673320 Signed-off-by: Peter Krempa <pkrempa>
Can be reproduced: libvirt-5.0.0-1.module+el8+2718+dce7093f.x86_64 qemu-kvm-3.1.0-8.module+el8+2726+efbc7128.x86_64 # rm -f /var/cache/libvirt/qemu/capabilities/3c76bc41d59c0c7314b1ae8e63f4f765d2cf16abaeea081b3ca1f5d8732f7bb1.xml # systemctl restart libvirtd # cat /var/log/libvirt/libvirtd.log|grep -E '"execute":"query-events"|"execute":"query-qmp-schema"' 2019-02-13 09:18:40.927+0000: 557: debug : virJSONValueToString:1995 : result={"execute":"query-events","id":"libvirt-6"} 2019-02-13 09:18:40.927+0000: 557: debug : qemuMonitorJSONCommandWithFd:304 : Send command '{"execute":"query-events","id":"libvirt-6"}' for write with FD -1 2019-02-13 09:18:40.927+0000: 557: info : qemuMonitorSend:1081 : QEMU_MONITOR_SEND_MSG: mon=0x7f58a0106d10 msg={"execute":"query-events","id":"libvirt-6"} 2019-02-13 09:18:40.928+0000: 508: info : qemuMonitorIOWrite:549 : QEMU_MONITOR_IO_WRITE: mon=0x7f58a0106d10 buf={"execute":"query-events","id":"libvirt-6"} 2019-02-13 09:18:41.058+0000: 557: debug : virJSONValueToString:1995 : result={"execute":"query-qmp-schema","id":"libvirt-44"} 2019-02-13 09:18:41.058+0000: 557: debug : qemuMonitorJSONCommandWithFd:304 : Send command '{"execute":"query-qmp-schema","id":"libvirt-44"}' for write with FD -1 2019-02-13 09:18:41.058+0000: 557: info : qemuMonitorSend:1081 : QEMU_MONITOR_SEND_MSG: mon=0x7f58a0106d10 msg={"execute":"query-qmp-schema","id":"libvirt-44"} 2019-02-13 09:18:41.058+0000: 508: info : qemuMonitorIOWrite:549 : QEMU_MONITOR_IO_WRITE: mon=0x7f58a0106d10 buf={"execute":"query-qmp-schema","id":"libvirt-44"} "query-events" is used.
Verify this bug with: libvirt-daemon-5.6.0-1.module+el8.1.0+3890+4d3d259c.x86_64 qemu-kvm-4.0.0-6.module+el8.1.0+3736+a2aefea3.x86_64 Steps: 1. Newly create caps xml, should use "query-qmp-schema" only, without "query-events": # rm -f /var/cache/libvirt/qemu/capabilities/3c76bc41d59c0c7314b1ae8e63f4f765d2cf16abaeea081b3ca1f5d8732f7bb1.xml # systemctl restart libvirtd # cat /var/log/libvirt/libvirtd.log|grep -E '"execute":"query-events"|"execute":"query-qmp-schema"' 2019-08-13 02:38:43.565+0000: 16853: info : qemuMonitorSend:1072 : QEMU_MONITOR_SEND_MSG: mon=0x7f3d780f77b0 msg={"execute":"query-qmp-schema","id":"libvirt-43"} 2019-08-13 02:38:43.565+0000: 16837: info : qemuMonitorIOWrite:546 : QEMU_MONITOR_IO_WRITE: mon=0x7f3d780f77b0 buf={"execute":"query-qmp-schema","id":"libvirt-43"} 2. Upgrade libvirt, caps xml should not lose any events: # rpm -q libvirt-daemon qemu-kvm libvirt-daemon-5.5.0-2.module+el8.1.0+3773+7dd501bf.x86_64 qemu-kvm-4.0.0-6.module+el8.1.0+3736+a2aefea3.x86_64 # ls -l /var/cache/libvirt/qemu/capabilities/3c76bc41d59c0c7314b1ae8e63f4f765d2cf16abaeea081b3ca1f5d8732f7bb1.xml -rw-------. 1 root root 62517 Aug 12 **23:00** /var/cache/libvirt/qemu/capabilities/3c76bc41d59c0c7314b1ae8e63f4f765d2cf16abaeea081b3ca1f5d8732f7bb1.xml # cp /var/cache/libvirt/qemu/capabilities/3c76bc41d59c0c7314b1ae8e63f4f765d2cf16abaeea081b3ca1f5d8732f7bb1.xml /root/caps_5-5.xml # yum module update virt:8.1 # rpm -q libvirt-daemon qemu-kvm libvirt-daemon-5.6.0-1.module+el8.1.0+3890+4d3d259c.x86_64 qemu-kvm-4.0.0-6.module+el8.1.0+3736+a2aefea3.x86_64 # ls -l /var/cache/libvirt/qemu/capabilities/3c76bc41d59c0c7314b1ae8e63f4f765d2cf16abaeea081b3ca1f5d8732f7bb1.xml -rw-------. 1 root root 62548 Aug 12 **23:06***/var/cache/libvirt/qemu/capabilities/3c76bc41d59c0c7314b1ae8e63f4f765d2cf16abaeea081b3ca1f5d8732f7bb1.xml # diff /var/cache/libvirt/qemu/capabilities/3c76bc41d59c0c7314b1ae8e63f4f765d2cf16abaeea081b3ca1f5d8732f7bb1.xml /root/caps_5-5.xml 3,4c3,4 < <selfctime>1565665559</selfctime> < <selfvers>5006000</selfvers> --- > <selfctime>1565665000</selfctime> > <selfvers>5005000</selfvers> 196d195 < <flag name='bochs-display'/> Only selfctime and selfvers are different, and new flag 'bochs-display' is added. No event related flags changed.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2019:3723