Messages in this thread Patch in this message | | | Date | Thu, 19 Jun 2003 12:37:22 -0700 | From | David Mosberger <> | Subject | potential set_child_tid/clear_child_tid bug |
| |
At the moment, if you don't set CLONE_CHILD_SETTID/CLONE_CHILD_CLEARTID, the {set,clear}_child_tid values get inherited from the parent task. I may be missing something, but I suspect that's not the intended behavior. The patch below instead clears the respective members.
--david
diff -Nru a/kernel/fork.c b/kernel/fork.c --- a/kernel/fork.c Thu Jun 19 12:20:17 2003 +++ b/kernel/fork.c Thu Jun 19 12:20:17 2003 @@ -889,11 +889,15 @@ if (clone_flags & CLONE_CHILD_SETTID) p->set_child_tid = child_tidptr; + else + p->set_child_tid = NULL; /* * Clear TID on mm_release()? */ if (clone_flags & CLONE_CHILD_CLEARTID) p->clear_child_tid = child_tidptr; + else + p->clear_child_tid = NULL; /* * Syscall tracing should be turned off in the child regardless - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |