lkml.org 
[lkml]   [1998]   [Jul]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Date
SubjectFix for diald dial failure problem (kernel 2.0.34 bug?)

This error:

Jul 19 14:04:16 slip2 diald[1911]: Delaying 15 seconds before clear to dial.
Jul 19 14:04:44 slip2 diald[1911]: SIGHUP: modem got hung up on.
Jul 19 14:04:44 slip2 diald[1911]: could not get initial terminal attributes: I/
O error
Jul 19 14:04:44 slip2 diald[1911]: failed to set terminal attributes: I/O error
Jul 19 14:04:44 slip2 diald[1911]: Running connect (pid = 1960).
Jul 19 14:04:45 slip2 chat[1961]: Can't get terminal parameters: I/O error
Jul 19 14:04:45 slip2 diald[1911]: Connect script failed.

Which can be duplicated by doing:

$ stty 5:0:800014b2:0:0:0:0:0:0:0:1:0:0:0:0:0:0:0:0:0:0:0:0 </dev/ttyS0

to the relevent serial port when diald is running but idle.
The problem seems to be caused by a '-clocal' hangup being triggered by a
loopback 'stty 0' hangup before the flag is reset. This _may_ be a kernel
bug or simply a misunderstanding.

It can be avoided by the following patch:

--- modem.c.orig Fri Jun 20 07:08:42 1997
+++ modem.c Sun Jul 19 15:21:46 1998
@@ -251,6 +251,7 @@
{
int npgrpid;
int i;
+ int line_disc;
/*
* Open the serial device and set it up.
*/
@@ -348,6 +349,13 @@

if (!req_pid) {
/* hang up and then start again */
+ set_up_tty(modem_fd, 1, inspeed);
+ if( ioctl(modem_fd, TIOCGETD, &line_disc) < 0 || line_disc != N_TTY )
+ {
+ line_disc = N_TTY;
+ ioctl(modem_fd, TIOCSETD, &line_disc);
+ }
+
set_up_tty(modem_fd, 1, 0);
sleep(1);
set_up_tty(modem_fd, 1, inspeed);

The patch also fixes a situation where the line discipline has been left in
an unusual state by this or another program. Without this patch it will
hang the connect script.

--
Rob. (Robert de Bath <http://www.cix.co.uk/~mayday>)
<http://poboxes.com/rdebath>


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html

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