Re: Linux 2.6.0-test9

From: Linus Torvalds
Date: Sun Oct 26 2003 - 00:50:55 EST



On Sun, 26 Oct 2003 Andries.Brouwer@xxxxxx wrote:
>
> I have run 2.6.0-test6 without any problems. Switched
> to 2.6.0-test9 today. Something involving job control
> or so is broken. Several of my remote xterms hang.

Btw, this one sounds like a known bug in bash.

The bash bug does bad things when setting up pipelines of processes, and
it assigns the process groups in the wrong order. This causes the tty
layer to send SIGTTOU if the process touches the tty at just the right
time, which in turn causes processes to become stuck in STOPPED state.
It's very timing sensitive, and it apparently became easier to trigger
within the last month or so, probably because of the scheduler
interactivity changes.

You can trigger it under 2.4.x, and in fact it seems to be reasonably easy
to see with

while true ; do date | less -E ; done

which will cause processes to become stuck in stopped state after a while
(but because of the timing issues it's not 100% repeatable - you may
have to do this for a while).

You can work around it by building basb without the "PGRP_PIPE" config
option (which may cause other issues), but Ernie Petrides also had a
proper fix for it in the bash sources. Last I say (this was end of
September), Chet Ramey acknowledged the bug but hadn't yet put it in
standard bash sources.

It's definitely not a kernel bug. I chased it for a while myself, and
Ernie proved it quite conclusively.

Linus

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/