All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/1] clean up checkpoint_task_objs
@ 2009-12-14 19:41 Serge E. Hallyn
       [not found] ` <20091214194145.GA21259-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
  0 siblings, 1 reply; 2+ messages in thread
From: Serge E. Hallyn @ 2009-12-14 19:41 UTC (permalink / raw)
  To: Oren Laadan; +Cc: Linux Containers

Make the flow more regular.  With the existing code, one can barely
find the call to checkpoint_task_obj_ns() even if looking for it!

This is on top of the task->fs c/r patch I sent last week.

Signed-off-by: Serge E. Hallyn <serue-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
---
 checkpoint/process.c |   17 ++++++++++++-----
 1 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/checkpoint/process.c b/checkpoint/process.c
index 603bbf4..bef909a 100644
--- a/checkpoint/process.c
+++ b/checkpoint/process.c
@@ -247,12 +247,17 @@ static int checkpoint_task_objs(struct ckpt_ctx *ctx, struct task_struct *t)
 
 	ret = checkpoint_task_creds(ctx, t);
 	ckpt_debug("cred: objref %d\n", ret);
-	if (!ret) {
-		ret = checkpoint_task_ns(ctx, t);
-		ckpt_debug("ns: objref %d\n", ret);
+	if (ret < 0) {
+		ckpt_err(ctx, ret, "%(T)process credentials\n");
+		return ret;
 	}
-	if (ret < 0)
+
+	ret = checkpoint_task_ns(ctx, t);
+	ckpt_debug("ns: objref %d\n", ret);
+	if (ret < 0) {
+		ckpt_err(ctx, ret, "%(T)process namespaces\n");
 		return ret;
+	}
 
 	fs_objref = checkpoint_get_task_fs(ctx, t);
 	if (fs_objref < 0) {
@@ -291,8 +296,10 @@ static int checkpoint_task_objs(struct ckpt_ctx *ctx, struct task_struct *t)
 	signal_objref = ckpt_obj_lookup_add(ctx, t->signal,
 					    CKPT_OBJ_SIGNAL, &first);
 	ckpt_debug("signal: objref %d\n", signal_objref);
-	if (signal_objref < 0)
+	if (signal_objref < 0) {
+		ckpt_err(ctx, signal_objref, "%(T)process signals\n");
 		return signal_objref;
+	}
 
 	h = ckpt_hdr_get_type(ctx, sizeof(*h), CKPT_HDR_TASK_OBJS);
 	if (!h)
-- 
1.6.0.4

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH 1/1] clean up checkpoint_task_objs
       [not found] ` <20091214194145.GA21259-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
@ 2009-12-23  0:47   ` Oren Laadan
  0 siblings, 0 replies; 2+ messages in thread
From: Oren Laadan @ 2009-12-23  0:47 UTC (permalink / raw)
  To: Serge E. Hallyn; +Cc: Linux Containers


Queued for v19-rc3, thanks.


Serge E. Hallyn wrote:
> Make the flow more regular.  With the existing code, one can barely
> find the call to checkpoint_task_obj_ns() even if looking for it!
> 
> This is on top of the task->fs c/r patch I sent last week.
> 
> Signed-off-by: Serge E. Hallyn <serue-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
> ---
>  checkpoint/process.c |   17 ++++++++++++-----
>  1 files changed, 12 insertions(+), 5 deletions(-)
> 
> diff --git a/checkpoint/process.c b/checkpoint/process.c
> index 603bbf4..bef909a 100644
> --- a/checkpoint/process.c
> +++ b/checkpoint/process.c
> @@ -247,12 +247,17 @@ static int checkpoint_task_objs(struct ckpt_ctx *ctx, struct task_struct *t)
>  
>  	ret = checkpoint_task_creds(ctx, t);
>  	ckpt_debug("cred: objref %d\n", ret);
> -	if (!ret) {
> -		ret = checkpoint_task_ns(ctx, t);
> -		ckpt_debug("ns: objref %d\n", ret);
> +	if (ret < 0) {
> +		ckpt_err(ctx, ret, "%(T)process credentials\n");
> +		return ret;
>  	}
> -	if (ret < 0)
> +
> +	ret = checkpoint_task_ns(ctx, t);
> +	ckpt_debug("ns: objref %d\n", ret);
> +	if (ret < 0) {
> +		ckpt_err(ctx, ret, "%(T)process namespaces\n");
>  		return ret;
> +	}
>  
>  	fs_objref = checkpoint_get_task_fs(ctx, t);
>  	if (fs_objref < 0) {
> @@ -291,8 +296,10 @@ static int checkpoint_task_objs(struct ckpt_ctx *ctx, struct task_struct *t)
>  	signal_objref = ckpt_obj_lookup_add(ctx, t->signal,
>  					    CKPT_OBJ_SIGNAL, &first);
>  	ckpt_debug("signal: objref %d\n", signal_objref);
> -	if (signal_objref < 0)
> +	if (signal_objref < 0) {
> +		ckpt_err(ctx, signal_objref, "%(T)process signals\n");
>  		return signal_objref;
> +	}
>  
>  	h = ckpt_hdr_get_type(ctx, sizeof(*h), CKPT_HDR_TASK_OBJS);
>  	if (!h)

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-12-23  0:47 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-14 19:41 [PATCH 1/1] clean up checkpoint_task_objs Serge E. Hallyn
     [not found] ` <20091214194145.GA21259-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-12-23  0:47   ` Oren Laadan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.