[Pkg-libvirt-maintainers] Bug#1009878: /usr/sbin/libvirtd: Live migration of guest VM fails with kernel oops error
Ross Moutell
rossmoutell at gmail.com
Tue Apr 19 20:13:12 BST 2022
Package: libvirt-daemon
Version: 7.0.0-3
Severity: important
File: /usr/sbin/libvirtd
Dear Maintainer,
* What led up to the situation?
Attempting live migration of VM between hosts, either from virt-manager on a seperate workstation or from the host itself via terminal.
Example - virsh migrate --live web02 qemu+ssh://hypervisor01:64228/system
* What exactly did you do (or not do) that was effective (or ineffective)?
Investigated the following logs.
/var/log/syslog
Apr 18 09:25:45 hypervisor04 libvirtd[542]: Cannot start job (query, none, none) for domain email01; current job is (none, none, migration in) owned by (0 <null>, 0 <null>, 0 remoteDispatchDomainMigratePrepare3Params (flags=0x19)) for (0s, 0s, 305s)
/var/log/kern.log
Apr 17 22:45:45 hypervisor05 kernel: [ 804.114785] Internal error: Oops: 96000004 [#1] SMP
Apr 17 22:57:49 hypervisor05 kernel: [ 206.952482] Internal error: Oops: 96000004 [#1] SMP
Apr 18 01:06:11 hypervisor05 kernel: [ 463.133575] Internal error: Oops: 96000004 [#1] SMP
Apr 18 11:12:39 hypervisor05 kernel: [36851.073954] Internal error: Oops: 96000004 [#2] SMP
Apr 18 11:29:19 hypervisor05 kernel: [37850.896463] Internal error: Oops: 96000004 [#3] SMP
error in dmesg
[ 324.673078] audit: type=1400 audit(1650240228.486:23): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="libvirt-72799f47-939c-4415-92c3-73ec371425fd" pid=979 comm="apparmor_parser"
[ 324.768028] audit: type=1400 audit(1650240228.582:24): apparmor="DENIED" operation="capable" profile="libvirtd" pid=542 comm="rpc-worker" capability=39 capname="bpf"
[ 324.774241] audit: type=1400 audit(1650240228.586:25): apparmor="DENIED" operation="capable" profile="libvirtd" pid=542 comm="rpc-worker" capability=38 capname="perfmon"
[ 326.770324] audit: type=1400 audit(1650240230.582:26): apparmor="DENIED" operation="capable" profile="libvirtd" pid=542 comm="rpc-worker" capability=39 capname="bpf"
I added
capability bpf,
capability perfmon,
to /etc/apparmor.d/usr.sbin.libvirtd which resolved the DENIED errors but did not resolve the live migration failures.
* What was the outcome of this action?
The following errors were produced.
kernel:\[37850.896463\] Internal error: Oops: 96000004 \[#3\] SMP
Message from syslogd at hypervisor05 at Apr 18 11:29:19 ...
kernel:\[37851.195226\] Code: 910003fd f9000bf3 2a0003f3 97ff7164 (b95ed801)
The VM that was submitted for migration ends up hung in a paused state. The only way to recover it is force power off on the VM, then 'sudo systemctl restart libvirtd.service'. The VM can then be powered on again normally.
* What outcome did you expect instead?
Live migration to complete successfully which has been the case on eariler kernel versions. However at this time I do not know which kernel versions worked other than the one it shipped with which was as follows.
linux-image-5.10.0-8-arm64 5.10.46-5 arm64 Linux 5.10 for 64-bit ARMv8 machines (signed)
-- System Information:
Debian Release: 11.3
APT prefers stable-security
APT policy: (500, 'stable-security'), (500, 'stable')
Architecture: arm64 (aarch64)
Kernel: Linux 5.10.0-13-arm64 (SMP w/4 CPU threads)
Kernel taint flags: TAINT_CRAP
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages libvirt-daemon depends on:
ii libblkid1 2.36.1-8+deb11u1
ii libc6 2.31-13+deb11u3
ii libdevmapper1.02.1 2:1.02.175-2.1
ii libgcc-s1 10.2.1-6
ii libglib2.0-0 2.66.8-1
ii libnetcf1 1:0.2.8-1.1
ii libparted2 3.4-1
ii libpcap0.8 1.10.0-2
ii libpciaccess0 0.16-1
ii libselinux1 3.1-3
ii libudev1 247.3-7
ii libvirt-daemon-driver-qemu 7.0.0-3
ii libvirt0 7.0.0-3
ii libxml2 2.9.10+dfsg-6.7+deb11u1
Versions of packages libvirt-daemon recommends:
ii libvirt-daemon-driver-lxc 7.0.0-3
pn libvirt-daemon-driver-vbox <none>
ii libvirt-daemon-driver-xen 7.0.0-3
ii libxml2-utils 2.9.10+dfsg-6.7+deb11u1
ii netcat-openbsd 1.217-3
ii qemu-system 1:5.2+dfsg-11+deb11u1
ii qemu-system-arm [qemu-kvm] 1:5.2+dfsg-11+deb11u1
Versions of packages libvirt-daemon suggests:
pn libvirt-daemon-driver-storage-gluster <none>
pn libvirt-daemon-driver-storage-iscsi-direct <none>
pn libvirt-daemon-driver-storage-rbd <none>
pn libvirt-daemon-driver-storage-zfs <none>
ii libvirt-daemon-system 7.0.0-3
pn numad <none>
-- no debconf information
More information about the Pkg-libvirt-maintainers
mailing list