lkml.org 
[lkml]   [2004]   [May]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: strange delays on console logouts (tty != 1)
    On Sun, May 02, 2004 at 01:24:48AM +0200, Petr Vandrovec wrote:

    > I do not think that it is init...

    No, it's not.

    > (1) agetty (at least from util-linux 2.12 from current debian
    > unstable) opens /dev/console and calls VT_OPENQRY to find first
    > unopened VT.

    yes, this i discovered too

    > I have no idea why it does this, especially as it causes problems
    > when more than one agetty is started simultaneously. I cannot
    > believe that there is no better way how to detect whether tty is in
    > use or not (as comment in the agetty suggests).

    read below

    > (2) tty hangup is scheduled for work_queue.

    > (3) when you have bad luck then scheduled hangup work runs AFTER
    > newly created agetty calls VT_OPENQRY, and you get an error that
    > ttyX is already in use...

    Unless I misunderstand you, I'm not conviced... it get tty's 'stuck',
    they never come right even after hours or days.

    > I think that we should concentrate on how is it possible that init
    > can spawn agetty and agetty can parse whole /var/run/utmp, open
    > /dev/console and issue VT_OPENQRY before work scheduled before init
    > was even notified is done. It looks to me like that someone
    > schedules some job on the workqueue although that job apparently
    > deserves its own kernel thread due to time it takes.

    Yes, as far as the kernel is concerned this needs checking.

    By comments (from before I got this email) and a pointer to the fix I
    use...


    I see unused tty's (such as tty4) and ioctl(..., VT_OPENQRY, ...)
    returning numbers like 8 --- which agetty barfs on.

    The solution I hacked up was to have agetty use vhangup on the tty and
    not even use the ioctl which seems fragile at the best of time. The
    present patch is at:

    http://stupidest.org/patches/util-linux-2.12-agetty-vhangup.001.patch

    (ugly URL, sorry about that).

    I've cc'd Andries Brouwer his his comments as he is the util-linux
    maintainer.



    Thanks,

    --cw
    -
    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/

    \
     
     \ /
      Last update: 2005-03-22 14:02    [W:2.577 / U:1.776 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site