[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20070420150257.GA5539@fi.muni.cz>
Date: Fri, 20 Apr 2007 17:02:57 +0200
From: Jan Yenya Kasprzak <kas@...muni.cz>
To: Jiri Slaby <jirislaby@...il.com>
Cc: linux-kernel@...r.kernel.org, osv@...ad.com
Subject: Re: [RFC 1/1] Char: mxser_new, fix recursive locking
Jiri Slaby wrote:
: On 4/14/07, Jan Yenya Kasprzak <kas@...muni.cz> wrote:
:
: > I have another problem with the driver - it probably sometimes
: >drops DCD signal on the serial line or something like that:
: >when the traffic on the serial console is heavy, it sometimes disconnects
: >me from the remote shell, and cu(1) displays the login prompt from the new
: >instance of mgetty of the remote machine. However, it does so both with
: >mxser.o and mxser_new.o (in 2.6.21-rc6, I think it worked in 2.6.19,
: >but I have to retest it). So this is another problem, different from
: >the one we are trying to solve now.
:
: There were some changes, however nothing significant in mxser.c, maybe
: some of tty or ldisc layer changes (but there is only termios ->
: ktermios switch + some other things), this would probably be hard to
: find without bisecting if 2.6.19 is really OK for you.
:
: The only idea I have right now is to nohup process, which will
: int fd = open("/dev/ttyMIXX", O_RDONLY | O_NONBLOCK);
: while (1) {
: ioctl(fd, TIOCMIWAIT, TIOCM_CD);
: ioctl(fd, TIOCMGET, &ret);
: printf("%ld: carrier has changed: %u\n", time(NULL), !!(ret & TIOCM_CD));
: }
: to prove, if the carrier really becomes low.
I ran the above code on both sides (on ttyMI0 of the server with
the MOXA card, and on ttyS0 of the server with the serial console).
I then logged in to the remote server using "cu -l ttyMI0 -s 38400",
and ran "find / -print" to generate some traffic. It went on without problems
for few minutes. But as soon as I pressed <enter> to the cu(1) (generating
traffic in the opposite direction), I was disconnected from the remote shell,
and the new mgetty has been started. The above program has reported
DCD change to 0 on both sides (in one direction it can be explained
by the fact that mgetty cycles DTR on startup, generating a DCD cycle
on the remote end of the null-modem connection).
-Yenya
--
| Jan "Yenya" Kasprzak <kas at {fi.muni.cz - work | yenya.net - private}> |
| GPG: ID 1024/D3498839 Fingerprint 0D99A7FB206605D7 8B35FCDE05B18A5E |
| http://www.fi.muni.cz/~kas/ Journal: http://www.fi.muni.cz/~kas/blog/ |
> I will never go to meetings again because I think face to face meetings <
> are the biggest waste of time you can ever have. --Linus Torvalds <
-
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