• D
    Add handling for reboots of LXC containers · cb612ee4
    Daniel P. Berrange 提交于
    The reboot() syscall is allowed by new kernels for LXC containers.
    The LXC controller can detect whether a reboot was requested
    (instead of a normal shutdown) by looking at the "init" process
    exit status. If a reboot was triggered, the exit status will
    record SIGHUP as the kill reason.
    
    The LXC controller has cleared all its capabilities, and the
    veth network devices will no longer exist at this time. Thus
    it cannot restart the container init process itself. Instead
    it emits an event which is picked up by the LXC driver in
    libvirtd. This will then re-create the container, using the
    same configuration as it was previously running with (ie it
    will not activate 'newDef').
    Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
    cb612ee4
lxc_controller.c 46.5 KB