[Mono-bugs] [Bug 423518] WARNING: Got event 137f for unknown pid xxxx
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Wed Oct 22 18:58:17 EDT 2008
https://bugzilla.novell.com/show_bug.cgi?id=423518
User martin at novell.com added comment
https://bugzilla.novell.com/show_bug.cgi?id=423518#c28
--- Comment #28 from Martin Baulig <martin at novell.com> 2008-10-22 16:58:16 MDT ---
Yeah, sorry. My apologies for not taking this more serious in the first place.
Sure, I'll also backport the fix into the 2.0-branch.
Btw. it looks like the race condition already existed before, just didn't show
up until the latest kernel versions.
=====[kernel/fork.c, in 2.6.25]=======
if ((p->ptrace & PT_PTRACED) || (clone_flags & CLONE_STOPPED))
{
/*
* We'll start up with an immediate SIGSTOP.
*/
sigaddset(&p->pending.signal, SIGSTOP);
set_tsk_thread_flag(p, TIF_SIGPENDING);
}
if (!(clone_flags & CLONE_STOPPED))
wake_up_new_task(p, clone_flags);
else
__set_task_state(p, TASK_STOPPED);
if (unlikely (trace)) {
current->ptrace_message = nr;
ptrace_notify ((trace << 8) | SIGTRAP);
}
======[kernel/fork.c, in 2.6.27]==============
if (unlikely(clone_flags & CLONE_STOPPED)) {
/*
* We'll start up with an immediate SIGSTOP.
*/
sigaddset(&p->pending.signal, SIGSTOP);
set_tsk_thread_flag(p, TIF_SIGPENDING);
__set_task_state(p, TASK_STOPPED);
} else {
wake_up_new_task(p, clone_flags);
}
tracehook_report_clone_complete(trace, regs,
clone_flags, nr, p);
============================
Under normal circumstances, we're never called with CLONE_STOPPED - so
wake_up_new_task() is always executed before reporting creation of the new
thread.
I'll have a new patch ready shortly.
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the mono-bugs
mailing list