*BSD News Article 27615


Return to BSD News archive

Path: sserve!newshost.anu.edu.au!munnari.oz.au!bunyip.cc.uq.oz.au!harbinger.cc.monash.edu.au!msuinfo!agate!howland.reston.ans.net!sol.ctr.columbia.edu!news.kei.com!bloom-beacon.mit.edu!ai-lab!life.ai.mit.edu!mycroft
From: mycroft@duality.gnu.ai.mit.edu (Charles Hannum)
Newsgroups: comp.os.386bsd.questions
Subject: Re: high-speed slip/ppp reliability
Date: 20 Feb 1994 16:22:53 GMT
Organization: MIT Artificial Intelligence Lab
Lines: 44
Message-ID: <MYCROFT.94Feb20112253@duality.gnu.ai.mit.edu>
References: <1994Feb18.172307.17380@ticipa.pac.sc.ti.com>
NNTP-Posting-Host: duality.gnu.ai.mit.edu
In-reply-to: rmfowler@landru.mtc.ti.com's message of 18 Feb 94 17:23:07 GMT


[I apologize if the following sounds like a flame, but people ask
about sio, and I feel that a concrete an answer is required.  This is
how I see it.]


In article <1994Feb18.172307.17380@ticipa.pac.sc.ti.com>
rmfowler@landru.mtc.ti.com (Rex Fowler) writes:

   Most of the documentation and comparisons I've seen between freebsd
   and netbsd seem to agree that the serial throughput on freebsd is
   more reliable than netbsd.  Is this still true in the *-current
   trees?

I'm not completely convinced that it has ever been true.  I regularly
communicate with people running `high'-speed SLIP and PPP links with
NetBSD (though admittedly I think all of these people use 16550A-based
ports).  `high' == 38.4K and 57.6K CPU-to-modem, generally.

That said, there are some small improvements that could be made to the
com driver (in particular double buffering would help with FIFOless
chips, though not as much as some people claim), but I have serious
technical problems with sio.  It requires changes to the tty system
that no other *BSD* tty driver of any sort (including here the drivers
in the two 4.4 ports that were donated to us, and the various other
NetBSD ports) has required and some of which are very suspicious, and
in general it ignores standard interfaces for managing ttys and tty
buffers.  Furthermore, obvious bogons like:

#define setsofttty()    (ipending |= 1 << 4)     /* XXX */

just don't settle well with me.

I'm happy for anyone who finds sio useful, but I really cannot justify
putting it in NetBSD.

BTW, the double buffering is not hard to do.  It's on one of my (many)
lists, but anyone is welcome to do it.

--
- Charles Hannum
  NetBSD group
  Working ports: i386, hp300, amiga, sparc, mac68k, pc532.
  In progress: pmax, sun3.