Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 27 Feb 2004 05:36:04 +0300
From:      Andrey Chernov <ache@nagual.pp.ru>
To:        current@freebsd.org
Subject:   Very strange tty-related bug in recent -current
Message-ID:  <20040227023602.GA96917@nagual.pp.ru>

next in thread | raw e-mail | index | archive | help
Since too many components involved here (ssh, pty driver, tty driver), I 
can't trace it down well yet. Symptoms are:

After some time (say, 30mins) of normal working ncurses-based programs
(such as less, mutt, lynx) "go mad", i.e. redisplay screen wrongly or 
start to eat input, etc. Restarting program helps only for small (say 
1min) time. Restarting ssh helps permanently or for 30mins, as above.

I trace down one particular situation with mutt and found that stdin 
descriptor flags are changed after poll() with timeout syscall: O_NONBLOCK 
is added there! It sounds almost impossible and I can't find obvious 
places in the kernel code, where it may occurse, but it is so. It explains 
why characters are eated in the mutt: read returns -1 and EAGAIN but 
curses expect waiting for char.

Does somebody else seeng something similar too?

-- 
Andrey Chernov | http://ache.pp.ru/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040227023602.GA96917>