[PATCH 1/1] don't swap 0 sids if ctx->arg->pids

Oren Laadan orenl at librato.com
Fri Nov 6 10:23:03 PST 2009


pulled with a slight change: tests for !ctx->args->pidns instead
of ctx->args->pids.

Oren.


Serge E. Hallyn wrote:
> It breaks restart --pidns
> 
> Signed-off-by: Serge E. Hallyn <serue at us.ibm.com>
> ---
>  restart.c |   13 +++++++------
>  1 files changed, 7 insertions(+), 6 deletions(-)
> 
> diff --git a/restart.c b/restart.c
> index 47d729a..f523adf 100644
> --- a/restart.c
> +++ b/restart.c
> @@ -2039,12 +2039,13 @@ static int ckpt_adjust_pids(struct ckpt_ctx *ctx)
>  	 * NOTE: thanks to the construction of tasks_arr[], the first
>  	 * ctx->pid_nr entries in both arrays match (the same pids).
>  	 */
> -	for (m = 0; m < ctx->pids_nr; m++) {
> -		if (ctx->tasks_arr[m].flags & TASK_ZERO_SID)
> -			ctx->copy_arr[m].vsid = coord_sid;
> -		if (ctx->tasks_arr[m].flags & TASK_ZERO_PGID)
> -			ctx->copy_arr[m].vpgid = coord_sid;
> -	}
> +	if (!ctx->args->pids)
> +		for (m = 0; m < ctx->pids_nr; m++) {
> +			if (ctx->tasks_arr[m].flags & TASK_ZERO_SID)
> +				ctx->copy_arr[m].vsid = coord_sid;
> +			if (ctx->tasks_arr[m].flags & TASK_ZERO_PGID)
> +				ctx->copy_arr[m].vpgid = coord_sid;
> +		}
>  
>  	memcpy(ctx->pids_arr, ctx->copy_arr, len);
>  	close(ctx->pipe_in);


More information about the Containers mailing list