[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080602105027.GG18697@devserv.devel.redhat.com>
Date: Mon, 2 Jun 2008 06:50:27 -0400
From: Alan Cox <alan@...hat.com>
To: Vegard Nossum <vegard.nossum@...il.com>
Cc: Alan Cox <alan@...rguk.ukuu.org.uk>,
David Newall <davidn@...idnewall.com>,
Willy Tarreau <w@....eu>,
Harald Dunkel <harald.dunkel@...nline.de>,
Joe Peterson <joe@...rush.com>, linux-kernel@...r.kernel.org,
Alan Cox <alan@...hat.com>
Subject: Re: 2.6.25.3: su gets stuck for root
On Mon, Jun 02, 2008 at 12:16:56PM +0200, Vegard Nossum wrote:
> ioctl(0, SNDCTL_TMR_START or TCSETS, {B38400 opost isig icanon echo
> ...}) = ? ERESTARTSYS (To be restarted)
> --- SIGTTOU (Stopped (tty output)) @ 0 (0) ---
> --- SIGTTOU (Stopped (tty output)) @ 0 (0) ---
> ioctl(0, SNDCTL_TMR_START or TCSETS, {B38400 opost isig icanon echo
> ...}) = ? ERESTARTSYS (To be restarted)
> --- SIGTTOU (Stopped (tty output)) @ 0 (0) ---
> --- SIGTTOU (Stopped (tty output)) @ 0 (0) ---
> ... (repeating)
>
> The exact code path triggering this seems to be:
>
> tcsetattr() -> ioctl(TCSETS) -> set_termios() -> tty_check_change()
This looks correct to me and in fact I see the behaviour you report on 2.6.23
when running it. If I tell it to ignore SIGTTOU that also then behaves as
expected.
If
your pgrp is not the pgrp of the tty
and you are not ignoring TTOU
and you are not orphaned (as a group)
Then we are *supposed* to send you SIGTTOU and kick you back
into touch.
This is so that if you do
someapp
^Z
bg
otherapp
And someapp wants to change the tty settings it blocks back to the shell.
This is correct behaviour and behaviour we've had for years.
Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists