[PATCH user-cr] return, don't exist, at coord error

Oren Laadan orenl at librato.com
Sun Oct 18 19:57:23 PDT 2009


What was the command line you used for the restart ?

Oren.

Serge E. Hallyn wrote:
> All right I can't explain it at the moment, but exit(1) at
> ckpt_coordinator() (on error) causes restart.c to exit with 0,
> whereas return(ret) causes it to correctly exit with -1.
> 
> Without this, a restart whose kernel portion ends with say
> -1 ends up returning from user-cr/restart.c with 0, so userspace
> can't tell whether sys_restart succeeded or failed.  With the
> patch, it fails correctly.
> 
> Signed-off-by: Serge E. Hallyn <serue at us.ibm.com>
> ---
>  restart.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/restart.c b/restart.c
> index e6e72ac..87899ba 100644
> --- a/restart.c
> +++ b/restart.c
> @@ -933,7 +933,7 @@ static int ckpt_coordinator(struct ckpt_ctx *ctx)
>  		perror("restart failed");
>  		ckpt_verbose("Failed\n");
>  		ckpt_dbg("restart failed ?\n");
> -		exit(1);
> +		return ret;
>  	}
>  
>  	ckpt_verbose("Success\n");


More information about the Containers mailing list