Activity log for bug #1820291

Date Who What changed Old value New value Message
2019-03-15 14:38:19 Pierre Gaxatte bug added bug
2019-03-18 10:12:09 Christian Ehrhardt  nominated for series Ubuntu Cosmic
2019-03-18 10:12:09 Christian Ehrhardt  bug task added qemu (Ubuntu Cosmic)
2019-03-18 10:12:09 Christian Ehrhardt  nominated for series Ubuntu Bionic
2019-03-18 10:12:09 Christian Ehrhardt  bug task added qemu (Ubuntu Bionic)
2019-03-19 14:30:13 Launchpad Janitor merge proposal linked https://code.launchpad.net/~paelzer/ubuntu/+source/qemu/+git/qemu/+merge/364760
2019-03-22 16:27:22 Launchpad Janitor qemu (Ubuntu): status New Fix Released
2019-03-22 16:27:22 Launchpad Janitor cve linked 2019-3812
2019-03-25 09:48:49 Launchpad Janitor merge proposal linked https://code.launchpad.net/~ubuntu-virt/ubuntu/+source/qemu/+git/qemu/+merge/365022
2019-03-25 09:48:54 Launchpad Janitor merge proposal linked https://code.launchpad.net/~ubuntu-virt/ubuntu/+source/qemu/+git/qemu/+merge/365023
2019-03-25 10:24:08 Christian Ehrhardt  description The fsfreeze-hook in the package is installed on the path /etc/qemu/fsfreeze-hook/fsfreeze-hook but the default path is /etc/qemu/fsfreeze-hook. This means that to make it work, I had to: - add "-F/etc/qemu/fsfreeze-hook/fsfreeze-hook" to the DAEMON_ARGS in /etc/default/qemu-guest-agent - create a symlink /etc/qemu/fsfreeze-hook/fsfreeze-hook.d -> /etc/qemu/fsfreeze-hook.d to allow the fsfreeze-hook to find the scripts (it looks for them in FSFREEZE_D=$(dirname -- "$0")/fsfreeze-hook.d) To fix this I propose to either move the fsfreeze-hook to /etc/qemu/fsfreeze-hook as qemu-guest-agent expects it or add "-F/etc/qemu/fsfreeze-hook/fsfreeze-hook" to the init script and change the fsfreeze-hook accordingly. [Impact] * The feature of qemu-guest agent to run freeze hooks is used rarely but where used important to get data consistency right. Due to a path error when packaging the script (from upstream) it is currently not working at all (it calls a non existing path and even if you'd use the current path it would fail to find the potential drop-ins in its .d directory). * Without the fix users need to fix up things manually, but with it this would finally "just work". So move it to the place qemu-guest-agent expects the script. [Test Case] * 1. check the systemd service that no options are set (the default) /lib/systemd/system/qemu-guest-agent.service It will look like: ExecStart=-/usr/sbin/qemu-ga 2. without options set at #1 it will look for the script at the path: /etc/qemu/fsfreeze-hook => check that the executable script is at that path Before fix: it is a directory of the same name with the file in it After fix: location of the file is now as expected Extended test (optional): If you set up qemu guest agent [1] then you can drop executable snippets in /etc/qemu/fsfreeze-hook.d Those have to be executed when you trigger them from the host e.g. via $ virsh domfsfreeze <domainname> [1]: https://wiki.libvirt.org/page/Qemu_guest_agent [Regression Potential] * If users have manually fixed this up in unexpected ways then placing it at the correct place might affect their fixup. Chances are high that they will then see at least a conffile prompt (chosen the new path) or that the fixup code in the maintainer scripts will take an early exit (old path not existing) - both cases are safe. In general qemu-guest-agent is rarely used and even if it is, then freeze hooks again only affect a sub-portion of these users. For those it is important to work, but even if it would be broken it will not affect a major share of our overall qemu users and use-cases. [Other Info] * The fact that the new and required path of the file is in the old version a directory breaks some requirements of mv_conffile and makes this slightly more complex than one would think at first. --- The fsfreeze-hook in the package is installed on the path /etc/qemu/fsfreeze-hook/fsfreeze-hook but the default path is /etc/qemu/fsfreeze-hook. This means that to make it work, I had to: - add "-F/etc/qemu/fsfreeze-hook/fsfreeze-hook" to the DAEMON_ARGS in /etc/default/qemu-guest-agent - create a symlink /etc/qemu/fsfreeze-hook/fsfreeze-hook.d -> /etc/qemu/fsfreeze-hook.d to allow the fsfreeze-hook to find the scripts (it looks for them in FSFREEZE_D=$(dirname -- "$0")/fsfreeze-hook.d) To fix this I propose to either move the fsfreeze-hook to /etc/qemu/fsfreeze-hook as qemu-guest-agent expects it or add "-F/etc/qemu/fsfreeze-hook/fsfreeze-hook" to the init script and change the fsfreeze-hook accordingly.
2019-03-27 07:42:05 Christian Ehrhardt  qemu (Ubuntu Bionic): status New Triaged
2019-03-27 07:42:07 Christian Ehrhardt  qemu (Ubuntu Cosmic): status New Triaged
2019-03-27 11:54:38 Launchpad Janitor qemu (Ubuntu Cosmic): status Triaged Fix Released
2019-03-27 11:54:38 Launchpad Janitor cve linked 2018-16867
2019-03-27 11:54:38 Launchpad Janitor cve linked 2018-16872
2019-03-27 11:54:38 Launchpad Janitor cve linked 2018-19489
2019-03-27 11:54:38 Launchpad Janitor cve linked 2018-20123
2019-03-27 11:54:38 Launchpad Janitor cve linked 2018-20124
2019-03-27 11:54:38 Launchpad Janitor cve linked 2018-20125
2019-03-27 11:54:38 Launchpad Janitor cve linked 2018-20126
2019-03-27 11:54:38 Launchpad Janitor cve linked 2018-20191
2019-03-27 11:54:38 Launchpad Janitor cve linked 2018-20216
2019-03-27 11:54:38 Launchpad Janitor cve linked 2019-6778
2019-03-27 11:54:50 Launchpad Janitor qemu (Ubuntu Bionic): status Triaged Fix Released