Date: Mon, 9 Oct 1995 11:48:23 -0700 From: stu@cisco.com (Stu Phillips) To: Warner Losh <imp@village.org>, Paul Traina <pst@cisco.com> Cc: hackers@FreeBSD.ORG Subject: Re: FleeBSD and XNTPD Message-ID: <v02110116ac9f1d404aa0@[171.69.60.153]>
next in thread | raw e-mail | index | archive | help
At 11:31 AM 10/9/95, Warner Losh wrote: >: That's utterly bizzare that async IO isn't working on the serial lines, >I seem >: to recall using it way back a million years ago. > >TIA runs on 2.0R w/o any problems. It would have big problems if >async I/O was broken for serial lines.... > >Don't know what the deal is, but TIA just does a fcntl of the fd with >the O_NONBLOCK bit set after reading the flags on fd 0. Hope I've not started a fire storm here.... I'm running 2.1.0-950928-SNAP. Here's the code snarfed from xntpd/xntpd/ntp_io.c... The first two ioctl calls were added by me in an effort to debug what is going on.... Basically either the ioctl(TIOCSPGRP) call or the fcntl(F_SETOWN) both fail with ... (extracted from syslog)... Timestamps elided for brevity.. xntpd[1353]:xntpd version=3.4e (beta multicast); Sat Oct 7 17:11:29 PDT 1995 xntpd[1353]:tickadj = 5, tick = 10000, tvu_maxslew = 495 xntpd[1353]:refclock_ioctl: optional clk line discipline unsupported xntpd[1353]:ioctl(TIOCSPGRP) fails for clock I/O: Inappropriate ioctl for device xntpd[1353]: configuration of 127.127.20.1 failed #endif /* AIX && !BSD */ #ifndef CLOCK_DONE static int init_clock_sig(rio) struct refclockio *rio; { int pgrp = getpid(); int ldisc = TTYDISC; if (ioctl(rio->fd, TIOCSETD, (char*)&ldisc) == -1) { syslog(LOG_ERR, "ioctl(TIOCSETD) fails for clock I/O: %m"); return 1; } if (ioctl(rio->fd, TIOCSPGRP, (char*)&pgrp) == -1) { syslog(LOG_ERR, "ioctl(TIOCSPGRP) fails for clock I/O: %m"); return 1; } /* if (fcntl(rio->fd, F_SETOWN, getpid()) == -1) { syslog(LOG_ERR, "fcntl(F_SETOWN) fails for clock I/O: %m"); return 1; } */ if (fcntl(rio->fd, F_SETFL, FNDELAY|FASYNC) < 0) { syslog(LOG_ERR, "fcntl(FNDELAY|FASYNC) fails for clock I/O: %m"); return 1; } return 0; } This is trying to get the NMEA clock driver to function - xntp builds squeeky clean but the above barfs. Stu
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?v02110116ac9f1d404aa0>