multi-threaded app fails to restart

John Paul Walters jpnwalters at gmail.com
Mon Jul 26 10:56:54 PDT 2010


It works for me as well.  Thanks for your help Oren.

JP



On Mon, Jul 26, 2010 at 1:11 PM, Dan Smith <danms at us.ibm.com> wrote:
> OL> diff --git a/kernel/checkpoint/sys.c b/kernel/checkpoint/sys.c
> OL> index 171c867..c5517c2 100644
> OL> --- a/kernel/checkpoint/sys.c
> OL> +++ b/kernel/checkpoint/sys.c
> OL> @@ -625,8 +625,11 @@ int walk_task_subtree(struct task_struct *root,
> OL>             }
>
> OL>             /* if we arrive at root again -- done */
> OL> -           if (task == root)
> OL> -                   break;
> OL> +           if (task == root) {
> OL> +                   /* if not last thread - proceed with thread */
> OL> +                   task = root = next_thread(task);
> OL> +                   if (thread_group_leader(task))
> OL> +                           break;
>
>                } // Need to close this block
>
> Otherwise it seems to work for me:
>
> Tested-by: Dan Smith <danms at us.ibm.com>
>
> --
> Dan Smith
> IBM Linux Technology Center
> email: danms at us.ibm.com
>


More information about the Containers mailing list