Comment 11 for bug 1719579

Revision history for this message
bugproxy (bugproxy) wrote : Comment bridged from LTC Bugzilla

------- Comment From <email address hidden> 2017-11-29 01:48 EDT-------
Not sure how I missed this earlier.

There is an apparmor rule in /etc/apparmor.d/abstractions/libvirt-qemu denying access to /tmp and /var/tmp. More details here, https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1403648

With Save, libvirt writes to the save file using iohelper which is allowed as qemu is not directly accessing the /var/tmp but restore is from the file FD directly.

So, restore with --bypass-cache should work here which uses the iohelper.

I noticed on 16.04, 17.04 & 17.10 the -bypass-cache also fails with
error: internal error: Child process (LIBVIRT_LOG_OUTPUTS=1:stderr /usr/lib/libvirt/libvirt_iohelper /var/tmp/save.file 0 0) unexpected exit status 1: /usr/lib/libvirt/libvirt_iohelper: Unable to read /var/tmp/save.file: Invalid argument

I see the above is fixed upstream with the commits
776b9ac594b6a1e4afc924826c6e9cb5474e8e27
f830e371ef298e7fa949165d10dcf0cf3518abd5
3b8a0f6ac23e4d4620218870030a08f75419b5d7
05021e727d80527c4b53debed98b87b565780a16
633b699bfda06d9fcdb7f9466e2d2c9b4bc3e63c

Thanks,
Shivaprasad