From: Linus Torvalds <torvalds@transmeta.com>
To: Anton Blanchard <anton@samba.org>
Cc: linux-kernel@vger.kernel.org, Ingo Molnar <mingo@elte.hu>,
Roland McGrath <roland@redhat.com>,
Andrew Morton <akpm@digeo.com>, <arjanv@redhat.com>
Subject: Re: heavy handed exit() in latest BK
Date: Sat, 8 Feb 2003 18:00:01 -0800 (PST) [thread overview]
Message-ID: <Pine.LNX.4.44.0302081754340.5231-100000@home.transmeta.com> (raw)
In-Reply-To: <20030209005737.GD20110@krispykreme>
On Sun, 9 Feb 2003, Anton Blanchard wrote:
>
> From BK late last night (has everything except the most recent 2
> sound changesets)
>
> kernel BUG at kernel/exit.c:710!
>
> which is:
>
> do_exit()
> ...
> schedule();
> BUG();
> /* Avoid "noreturn function does return". */
> for (;;) ;
> }
>
> Oops. In a police lineup Id finger the signal changes.
Interesting. Especially as the last thing exit_notify() does (just a few
lines above the schedule()) is to do
tsk->state = TASK_ZOMBIE;
and that schedule() _really_ really shouldn't return. Regardless of any
signal handler changes.
By then we also have local interrupts disabled, and we've explicitly
disabled preemption, so I don't see how anything could ever wake us up any
more.
But yes, I'd agree with your line-up, if for no other reason than the fact
that I don't really see anything else even _remotely_ likely to muck
around with process state.
I don't see this (obviously), but could you make "try_to_wake_up()" (in
kernel/sched.c) do a
BUG_ON(p->state & TASK_ZOMBIE);
to see if somebody tries to wake up a zombie task (maybe the signal
handler stuff does that under some unlucky circumstances).
And then the call trace would be very interesting indeed if the above bug
triggers.. (and unlike the do_exit() bug, the tri_to_wake_up() thing
should clearly pinpoint where the problem actually happens, knock wood).
Linus
next prev parent reply other threads:[~2003-02-09 1:54 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-02-09 0:57 heavy handed exit() in latest BK Anton Blanchard
2003-02-09 2:00 ` Linus Torvalds [this message]
2003-02-09 2:17 ` Roland McGrath
2003-02-09 2:19 ` Linus Torvalds
2003-02-09 2:31 ` Roland McGrath
2003-02-09 2:34 ` Linus Torvalds
2003-02-09 2:33 ` Linus Torvalds
2003-02-09 2:41 ` Roland McGrath
2003-02-09 3:30 ` Roland McGrath
2003-02-09 3:33 ` Roland McGrath
2003-02-09 3:37 ` Linus Torvalds
2003-02-09 3:40 ` Linus Torvalds
2003-02-09 3:48 ` Roland McGrath
2003-02-09 4:51 ` Linus Torvalds
2003-02-09 4:57 ` Linus Torvalds
2003-02-09 5:00 ` Roland McGrath
2003-02-09 9:28 ` Russell King
2003-02-10 8:53 ` Ingo Molnar
2003-02-10 15:22 ` Linus Torvalds
[not found] <200302091130.h19BU2107744@magilla.sf.frob.com>
2003-02-09 11:40 ` Ingo Molnar
2003-02-09 11:56 ` Roland McGrath
2003-02-09 12:09 ` Ingo Molnar
2003-02-09 12:18 ` Ingo Molnar
2003-02-09 12:23 ` Ingo Molnar
2003-02-09 12:22 ` Arjan van de Ven
2003-02-10 1:07 ` Linus Torvalds
2003-02-10 1:27 ` Roland McGrath
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=Pine.LNX.4.44.0302081754340.5231-100000@home.transmeta.com \
--to=torvalds@transmeta.com \
--cc=akpm@digeo.com \
--cc=anton@samba.org \
--cc=arjanv@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=roland@redhat.com \
/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;
as well as URLs for NNTP newsgroup(s).