Date: Thu, 17 Jul 1997 19:57:29 PDT From: Craig Leres <leres@ee.lbl.gov> To: FreeBSD-gnats-submit@FreeBSD.ORG Subject: kern/4113: Re: Processes shouldn't get SIGIO when the tty is set to CLOCAL Message-ID: <199707180257.TAA17366@hot.ee.lbl.gov> Resent-Message-ID: <199707180300.UAA23016@hub.freebsd.org>
index | next in thread | raw e-mail
>Number: 4113
>Category: kern
>Synopsis: Processes shouldn't get SIGIO when the tty is set to CLOCAL
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Thu Jul 17 20:00:02 PDT 1997
>Last-Modified:
>Originator: Craig Leres
>Organization:
Lawrence Berkeley National Laboratory
>Release: FreeBSD 2.2.2-RELEASE i386
>Environment:
>Description:
When running the current release of xntp (3-5.90), xntpd syslogs
repeated errors:
Jul 17 12:29:24 meg xntpd[1714]: synchronized to GPS_JUPITER(0), st
ratum=0
Jul 17 12:29:25 meg xntpd[1714]: input_handler: select() returned 0
Jul 17 12:29:56 meg last message repeated 31 times
Jul 17 12:31:57 meg last message repeated 121 times
Jul 17 12:41:58 meg last message repeated 601 times
Jul 17 12:51:59 meg last message repeated 601 times
Jul 17 13:02:00 meg last message repeated 601 times
Jul 17 13:12:01 meg last message repeated 601 times
Jul 17 13:22:02 meg last message repeated 601 times
Jul 17 13:32:03 meg last message repeated 601 times
Jul 17 13:42:04 meg last message repeated 601 times
These are due to the DCD line being toggled once per second.
>How-To-Repeat:
Run the lastest xntpd with a refernece clock that uses
the DCD line to import the PPS signal; watch the syslog.
>Fix:
The appended patch to kern/tty.c cures the problem.
RCS file: RCS/tty.c,v
retrieving revision 1.1
diff -c -r1.1 tty.c
*** /tmp/,RCSt1005870 Thu Jul 17 19:49:16 1997
--- tty.c Thu Jul 17 19:17:05 1997
***************
*** 1377,1383 ****
if (!ISSET(tp->t_state, TS_ZOMBIE))
SET(tp->t_state, TS_CONNECTED);
wakeup(TSA_CARR_ON(tp));
! ttwakeup(tp);
ttwwakeup(tp);
}
return (1);
--- 1377,1392 ----
if (!ISSET(tp->t_state, TS_ZOMBIE))
SET(tp->t_state, TS_CONNECTED);
wakeup(TSA_CARR_ON(tp));
! /* Don't generate SIGIO's for DCD if CLOCAL */
! if (ISSET(tp->t_cflag, CLOCAL)) {
! register int t_state;
!
! t_state = tp->t_state;
! CLR(tp->t_state, TS_ASYNC);
! ttwakeup(tp);
! tp->t_state = t_state;
! } else
! ttwakeup(tp);
ttwwakeup(tp);
}
return (1);
------- End of Forwarded Message
>Audit-Trail:
>Unformatted:
------- Forwarded Message
Date: Thu, 17 Jul 1997 19:52:48 -0700 (PDT)
From: leres@ee.lbl.gov (Craig Leres)
Subject: Processes shouldn't get SIGIO when the tty is set to CLOCAL
To: FreeBSD-gnats-submit@freebsd.org
Cc: leres@ee.lbl.gov, mills@udel.edu (Dave Mills)
Reply-To: leres@ee.lbl.gov
X-send-pr-version: 3.2
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199707180257.TAA17366>
