From: Dwight Engen Date: Tue, 31 Dec 2013 19:21:49 +0000 (-0500) Subject: change lxc-autostart shutdown to behave like lxc-stop X-Git-Tag: lxc-1.0.0.beta2~93 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a771fe18d28890cfc545995fb818aa7472744fde;p=thirdparty%2Flxc.git change lxc-autostart shutdown to behave like lxc-stop It is desirable to have a mode where a soft shutdown is requested, but then do a hard shutdown if after some time period the container has not shut down. This the default behaviour of lxc-stop, but is not currently possible with lxc-autostart. This change makes this the default behaviour when shutdown is specified to lxc-autostart. This will be very useful for init scripts. An indefinte wait for soft shutdown (though I'm not sure how that would be useful) is still possible by passing a timeout of 0. Change default timeout value to 60 seconds to match lxc-stop Signed-off-by: Dwight Engen Signed-off-by: Serge Hallyn --- diff --git a/doc/lxc-autostart.sgml.in b/doc/lxc-autostart.sgml.in index 2f132ade9..99ee7facd 100644 --- a/doc/lxc-autostart.sgml.in +++ b/doc/lxc-autostart.sgml.in @@ -103,8 +103,11 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Only request a clean shutdown, do not kill the - container tasks if the clean shutdown fails. + Request a clean shutdown. If a + -t timeout greater than 0 is + given and the container has not shut down within + this period, it will be killed as with the + -k kill option. diff --git a/src/lxc/lxc_autostart.c b/src/lxc/lxc_autostart.c index f6e6bfc7f..b03de4f58 100644 --- a/src/lxc/lxc_autostart.c +++ b/src/lxc/lxc_autostart.c @@ -71,7 +71,7 @@ Options:\n\ .options = my_longopts, .parser = my_parser, .checker = NULL, - .timeout = 30, + .timeout = 60, }; int lists_contain_common_entry(struct lxc_list *p1, struct lxc_list *p2) { @@ -273,7 +273,6 @@ int main(int argc, char *argv[]) if (my_args.list) printf("%s\n", c->name); else { - my_args.timeout = 0; if (!c->shutdown(c, my_args.timeout)) fprintf(stderr, "Error shutting down container: %s\n", c->name); }