From: Oren Laadan <orenl-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
To: Sukadev Bhattiprolu
<sukadev-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
Cc: Containers
<containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>
Subject: Re: [C/R][PATCH] Use __WALL option in waitpid()
Date: Thu, 02 Jul 2009 01:55:53 -0400 [thread overview]
Message-ID: <4A4C4BE9.5010903@cs.columbia.edu> (raw)
In-Reply-To: <20090628051707.GA21192-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
Got it, thanks.
Oren.
Sukadev Bhattiprolu wrote:
> Oren,
>
> (Following up on the discussion from IRC)
>
> I had run my application as:
>
> ns_exec -cpuimP pid.ptree1 -- ./ptree1 -n 2 -d 1 -w sleep
>
> ns_exec creates the application in new container, with p->exit_signal 0.
> for the container-init. When we checkpoint the process tree, we
> correctly save and restore the exit_signal to 0. Because of that,
> we need the coordinator to use __WALL.
>
> Sukadev
>
> Sukadev Bhattiprolu [sukadev-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org] wrote:
> |
> | The coordinator creates the children with clone(), so pass the __WALL
> | option to waitpid(). Otherwise the waitpid() will fail, and bring the
> | container down even as the application is restarting successfully :-)
> |
> | Signed-off-by: Sukadev Bhattiprolu <sukadev-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
> |
> | ---
> | mktree.c | 2 +-
> | 1 file changed, 1 insertion(+), 1 deletion(-)
> |
> | Index: user-cr/mktree.c
> | ===================================================================
> | --- user-cr.orig/mktree.c 2009-06-27 12:16:42.000000000 -0700
> | +++ user-cr/mktree.c 2009-06-27 12:17:02.000000000 -0700
> | @@ -523,7 +523,7 @@ static int ckpt_collect_child(pid_t pid,
> | {
> | int status;
> |
> | - pid = waitpid(pid, &status, 0);
> | + pid = waitpid(pid, &status, __WALL);
> | if (pid < 0) {
> | perror("WEIRD: collect child task");
> | exit(1);
> | _______________________________________________
> | Containers mailing list
> | Containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org
> | https://lists.linux-foundation.org/mailman/listinfo/containers
>
prev parent reply other threads:[~2009-07-02 5:55 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-27 19:27 [C/R][PATCH] Use __WALL option in waitpid() Sukadev Bhattiprolu
[not found] ` <20090627192704.GA14326-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-06-28 5:17 ` Sukadev Bhattiprolu
[not found] ` <20090628051707.GA21192-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-07-02 5:55 ` Oren Laadan [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A4C4BE9.5010903@cs.columbia.edu \
--to=orenl-eqauephvms7envbuuze7ea@public.gmane.org \
--cc=containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=sukadev-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox