From: Joachim Falk <joachim.falk(a)gmx.de>
The virNetDaemonQuit(dmn) command in virLXCControllerSignalChildIO triggers an
early close of all clients of lxc_controller. Here, libvirtd itself is a client
of this controller, and the client connection is used to notify libvirtd if a
reboot of the container is required. However, the client connection was closed
before such a status could be sent to libvirtd. To fix this bug, we will
immediately send the reboot or shutdown status of the container to libvirtd,
and only after client disconnect will we trigger virNetDaemonQuit.
Fixes: #237
Bug:
https://gitlab.com/libvirt/libvirt/-/issues/237
Bug-Debian:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=991773
Signed-off-by: Joachim Falk <joachim.falk(a)gmx.de>
---
src/lxc/lxc_controller.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
Reviewed-by: Michal Privoznik <mprivozn(a)redhat.com>
and pushed. Congratulations on your first libvirt contribution!
Michal