Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 May 2008 15:30:28 -0700
From:      "Peter Wemm" <peter@wemm.org>
To:        "Bruce M. Simpson" <bms@freebsd.org>
Cc:        Ed Schouten <ed@80386.nl>, current@freebsd.org, arch@freebsd.org, Poul-Henning Kamp <phk@phk.freebsd.dk>, Robert Watson <rwatson@freebsd.org>, Ade Lovett <ade@freebsd.org>, net@freebsd.org
Subject:   Re: HEAD UP: non-MPSAFE network drivers to be disabled (was: 8.0 network stack MPsafety goals (fwd))
Message-ID:  <e7db6d980805271530y2462abf8p3727b1627d07b5f@mail.gmail.com>
In-Reply-To: <483C2666.7010608@FreeBSD.org>
References:  <20080527062736.GF64397@hoeg.nl> <45633.1211870269@critter.freebsd.dk> <20080527064253.GG64397@hoeg.nl> <483C2666.7010608@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, May 27, 2008 at 8:19 AM, Bruce M. Simpson <bms@freebsd.org> wrote:
> Ed Schouten wrote:
>>>>
>>>> With the word `should' I meant that it would still be possible to
>>>> implement multiple line disciplines with the mpsafetty code. But I
>>>> really think line disciplines should go.
>>>>
>>>
>>> No, don't bother.  Remove the entire "abstraction" of linedisciplines.
>>>
>>
>> Your wish is my command.
>>
>
> Like Julian and Robert said, please don't break Netgraph.
>
> It still needs to hook into tty at a very low level; and the components such
> as Bluetooth which can use ttys for low level stream processing, are built
> on Netgraph.
>
> Both SLIP and PPP can be built using Netgraph.
>
> Other than that, line disciplines can go away.

I think line disciplines should go away as such.  It would be nice to
have a place to hook into (even linux has this), but the line
discipline concept is 30 years stale.

IMHO, priority #1 is give ttys the first class treatment they need,
then priority #2 is to put in some low level hooks for ng_tty or
whatever.  It would be hard to come up with a more inconvenient
interface than we have now.

As an example.. look at the CAN_BYPASS_L_RINT stuff.  If we had a way
to pass a block of characters upstream instead of a single character
at a time, then we could build this magic into the input routines
instead of the device drivers.

The bypass is still useful because it saves considerable cycles for
raw tty modes, eg: userland ppp, zmodem upload/downloads etc etc.  But
the logic for it shouldn't have to be scattered all over the tree due
to poor line discipline APIs.

-- 
Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com
"All of this is for nothing if we don't go to the stars" - JMS/B5
"If Java had true garbage collection, most programs would delete
themselves upon execution." -- Robert Sewell



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?e7db6d980805271530y2462abf8p3727b1627d07b5f>