Re: Removing ARCNET stuffs

2015-05-29 Thread J. Lewis Muir
On 5/29/15 5:22 AM, David Holland wrote:
> Because of these trends, I've been thinking for a while now that maybe
> it's getting to be time to fork.

Hello, David!

I started using NetBSD because of its small base system disk and memory
footprint, focus on security, support for many machine architectures,
ability to scale well to large SMP machines, support for a wide range
of deployments from embedded to server to desktop (it's a big time
savings to only have to learn and remember how to do something on one
OS instead of many), and genteel user and developer community.  I value
all of these things.  (Some benefits I came to appreciate later were its
relatively long support for a release and its package management system,
pkgsrc (writing a package once and having it work on all platforms I use
is a big win).)

Personally, I don't have an interest in running NetBSD on vintage
hardware.  However, I understand and respect that some people do, and
I have nothing against that.  I would very much so hope for NetBSD to
*not* fork!  I agree with Taylor Campbell: "I suspect if people have the
time and energy to make and maintain a fork, they certainly have the
time to write automatic tests for the old network protocols." [1]

In "Evolving Frameworks," [2] Don Roberts and Ralph Johnson suggest
in the "Tree Examples" pattern that you should never write a software
framework unless you have at least three applications that use it.  Part
of the reasoning is that these applications help you come up with the
proper abstractions for the framework.  If you think of NetBSD as a
framework and the machine architectures and hardware as applications,
then perhaps all of those "applications" can actually be a benefit to
NetBSD and help it to have really nice abstractions and design.

Of course, bit rot is bad, and I can certainly understand those who
would like to remove things that aren't used.  It's more work to
maintain those things, and, in some cases, it offers a bigger attack
surface to attackers.  I understand the argument that something can
always be restored from the attic if someone wants it, but the downside
of that is that, while NetBSD advances, deleted things remain as they
were when deleted and thus become more difficult to bring back over
time.  But if you have automatic tests as Taylor Campbell suggested,
those things could potentially stay in the tree, and changes can be made
to them with some level of confidence because the automatic tests still
pass.

Regards,

Lewis

[1] http://mail-index.netbsd.org/tech-kern/2015/05/29/msg018796.html
[2] http://st-www.cs.illinois.edu/users/droberts/evolve.html


Re: Removing ARCNET stuffs

2015-05-29 Thread Dennis Ferguson

On 28 May, 2015, at 17:57 , Tyler Retzlaff  wrote:
> On 5/28/2015 12:39 PM, Robert Swindells wrote:
>> Radoslaw Kujawa  wrote:
>> 
>> The same arguments might be made against the plan to remove ATM
>> support.
> 
> I've got no problem with keeping it, removing it isn't really intellectually 
> rewarding I thought it more of a cleanup/chore that nobody really wanted to 
> do.  I only suggested removal because I know the code is broken.
> 
> I guess we could at least make it compile again if we kept it and add it to 
> the ALL kernels.  Is that enough?  It's likely to still be broken and 
> difficult to efficiently fix without any hardware though.

A long time ago I wrote code to support ATM interfaces for routers
that had the hardware.  I'm pretty sure they sold quite a few of
those interfaces and were still selling them not that long ago;
ADSL uses ATM framing and some carriers had ATM networks for
backhaul until they could no longer afford to pay the switch vendors
to maintain them.

I think you would say those routers supported ATM, and I don't
recall any complaints about that support being incomplete in some
way, yet that code did nothing similar to the stuff in sys/netnatm.
I know of no application which requires that and it clearly isn't
necessary to do something useful with ATM interfaces that people
were willing to spend (not inconsiderable) money for without it.

I would be much more impressed if someone stepped up, said they
knew what that code did and described what they would use it for
if the code actually worked.  As it is I believe that code not
only doesn't work but would have no utility if it did and probably
wasn't a good idea even when it was first included in the kernel
and you could still buy the hardware.  If someone had ATM hardware
they wanted to support they still wouldn't need that code and
would probably be better off if it were absent so they wouldn't
think the driver should be dependent on it.

If the idea of removing this causes angst I can't see how anything
can be removed, ever.

Dennis Ferguson

Re: Removing ARCNET stuffs

2015-05-29 Thread Taylor R Campbell
   Date: Fri, 29 May 2015 10:22:35 +
   From: David Holland 

   Because of these trends, I've been thinking for a while now that maybe
   it's getting to be time to fork. That would allow having one project
   that intends to stay current, with all the attendant requirements,
   which probably mostly doesn't make sense on vintage hardware; and
   another project that explicitly abandons most or all of that and
   instead concentrates on being the best possible traditional multiuser
   or workstation Unix, which does make sense on vintage hardware that
   was designed for (or could be adapted to) those roles, and which also
   makes sense on newer hardware to the extent it's consistent with the
   traditional role.

I suspect if people have the time and energy to make and maintain a
fork, they certainly have the time to write automatic tests for the
old network protocols.  If anyone wants to sit down and do that, I
would be happy to help.

If not, there already are `forks' that work: netbsd-5, netbsd-4, &c.


Re: Removing ARCNET stuffs

2015-05-29 Thread Robert Swindells

David Holland  wrote:
>On Thu, May 28, 2015 at 08:06:56PM +0200, Tom Ivar Helbekkmo wrote:
> > Me, too.  What NetBSD offers, that no other O/S offers, is the support
> > for platforms that are no longer mainstream.  I've run it on Sparc and
> > VAX processors for years, and hope to continue playing with these old
> > machines.  I enjoy reading about others running NetBSD on even more
> > exotic platforms.  (Incidentally, and I run OmniNet (an ancient 2Mbps
> > token ring network) between machines in my home lab that are too old to
> > even run NetBSD.)
>
>I don't think (in general) that removing things is a good idea; but
>it's increasingly difficult to keep NetBSD running on ancient
>hardware. It's already infeasible to run the system compiler on most
>such machines; this is only going to get worse with time. Other bloat
>accumulates too, less rapidly perhaps but still so. The other day I
>observed in chat that Someone(TM) needs to sit down with a slow
>machine and a profiler for a while and find and kill all the
>gratuitous bubble sorts, linear searches, and other things that run
>too fast to be noticed on modern h/w; nobody disagreed, but on the
>other hand nobody's been rushing to do it either. And other things
>necessary for remaining relevant to semi-current hardware and usage,
>like keeping up with X, desktop, and virtualization things, are often
>in direct conflict with maintaining support for old hardware.

I tried booting -current on a mac68k earlier this week, it certainly
felt slower than I remembered.

[snip]

>Because of these trends, I've been thinking for a while now that maybe
>it's getting to be time to fork. That would allow having one project
>that intends to stay current, with all the attendant requirements,
>which probably mostly doesn't make sense on vintage hardware; and
>another project that explicitly abandons most or all of that and
>instead concentrates on being the best possible traditional multiuser
>or workstation Unix, which does make sense on vintage hardware that
>was designed for (or could be adapted to) those roles, and which also
>makes sense on newer hardware to the extent it's consistent with the
>traditional role.

I started using NetBSD because I wanted to use it on embedded
systems. Being able to use exactly the same OS on a desktop machine
for development was a big help and something that you don't really get
with Linux as there are so many different source trees.

Robert Swindells



Re: Removing ARCNET stuffs

2015-05-29 Thread Gert Doering
Hi,

On Fri, May 29, 2015 at 10:22:35AM +, David Holland wrote:
> Because of these trends, I've been thinking for a while now that maybe
> it's getting to be time to fork. That would allow having one project
> that intends to stay current, with all the attendant requirements,
> which probably mostly doesn't make sense on vintage hardware; and
> another project that explicitly abandons most or all of that and
> instead concentrates on being the best possible traditional multiuser
> or workstation Unix, which does make sense on vintage hardware that
> was designed for (or could be adapted to) those roles, and which also
> makes sense on newer hardware to the extent it's consistent with the
> traditional role.

I would argue that this has happened already - FreeBSD and NetBSD are
the results...  at least from the outside, this is how it looks like,
with FreeBSD focusing on few platforms but modernizing itself quite
a bit (kernel preempting, zfs, ...) and NetBSD focusing on "it runs
everywhere".

I'm not sure the BSD worlds needs yet another fork.

Now, speaking as application developer: I'd hate to see yet another BSD
fork that I have to test OpenVPN on regularily, to see whether "we" or 
"they" broke something and system-specific parts need to be adjusted...
(right now, we build and test on FreeBSD, NetBSD and OpenBSD, and 
various versions of those - sufficiently subtly different that there
has to be system-specific code for ifconfig/route handling...)

gert


-- 
USENET is *not* the non-clickable part of WWW!
   //www.muc.de/~gert/
Gert Doering - Munich, Germany g...@greenie.muc.de
fax: +49-89-35655025g...@net.informatik.tu-muenchen.de



Re: Removing ARCNET stuffs

2015-05-29 Thread David Holland
On Thu, May 28, 2015 at 05:01:02PM +, paul_kon...@dell.com wrote:
 > > But I too find it regrettable and possibly dangerous.  One of my
 > > copious-spare-time projects is to dig up enough specs to add a DECnet
 > > stack to my systems;
 > 
 > DECnet phase IV specs are readily available and good enough to
 > build interoperable implementations (which isn?t true,
 > unfortunately, for a lot of protocol specs).  DECnet Phase IV
 > (DECnet/OSI) specs also have been uncovered, though they are in
 > more obscure spots.  And DECnet nodes exist around the Internet;
 > the ?Hobbyist DECnet? group (?hecnet?) is the main focus of that
 > activity as far as I know.
 > 
 > If you want pointers to documents, just ask, I can supply those.

slightly relatedly, do you (or anyone else reading this) happen to
know what happened to the mopd patches described in PR 3344?

-- 
David A. Holland
dholl...@netbsd.org


Re: Removing ARCNET stuffs

2015-05-29 Thread Johnny Billquist

On 2015-05-29 08:18, Matt Thomas wrote:



On May 28, 2015, at 4:15 PM, Johnny Billquist  wrote:

On 2015-05-28 21:19, Tom Ivar Helbekkmo wrote:

paul_kon...@dell.com writes:


And DECnet nodes exist around the Internet; the “Hobbyist DECnet”
group (“hecnet”) is the main focus of that activity as far as I know.


...and while I'm sure Johnny Billquist can supply more details, and
correct me if I'm wrong, DECnet on NetBSD seems to me to be an active
component of the hecnet environment.


Nope. NetBSD do not run DECnet. I run a bridge program, which I initially 
developed on NetBSD, but it runs on pretty much anything.


Your’s don’t. :)


If it doesn't, then I should fix it. Currently I'm just running it under 
Linux and OSX, and I know others who have run it on Windows and OpenBSD. 
I haven't tested on NetBSD recently, but if there is some problem it 
should be really easy to fix. That said, the code is just a plan, ugly hack.



Oh, and DECnet on Linux is not so great either, and I believe it has been 
dropped from the main tree.
But if anyone wants to try and get NetBSD to talk DECnet, Paul and me can 
certainly help in many ways.


I have a Phase IV+ (so I didn’t have to much with the physical address) 
implementation but never got around to writing the apps.  socket interface is 
identical to DECnet-ULTRIX.  DAP is a beast as is CTERM.  I could run IP 
protocols over, but then I have IP for that. :)


If you say that you didn't fiddle with physical addresses, then you have 
been playing Phase V, as Phase IV requires that you manipulate the 
physical address. And that is also true of IV+.


DAP would be really nice, but it's complex. But I like the capabilities. 
CTERM on the other hand is on my top-3 list of things I hate (pretty 
much the norm for all non-VMS people :-) ).



I never committed it because I doubted there was interest.  It’s probably bit 
rotted but I could resurrect it.


Well, me for one would be interested...


In a world a long time ago I was one of the kernel engineers for DECnet for 
ULTRIX and OSF/1 (nee Digital UNIX). It was one reason I could stand the netiso 
code because it was so horrible.


Hey, cool. Then you should know more about this than I do.

Johnny

--
Johnny Billquist  || "I'm on a bus
  ||  on a psychedelic trip
email: b...@softjar.se ||  Reading murder books
pdp is alive! ||  tryin' to stay hip" - B. Idol



Re: Removing ARCNET stuffs

2015-05-29 Thread David Holland
On Thu, May 28, 2015 at 08:06:56PM +0200, Tom Ivar Helbekkmo wrote:
 > Me, too.  What NetBSD offers, that no other O/S offers, is the support
 > for platforms that are no longer mainstream.  I've run it on Sparc and
 > VAX processors for years, and hope to continue playing with these old
 > machines.  I enjoy reading about others running NetBSD on even more
 > exotic platforms.  (Incidentally, and I run OmniNet (an ancient 2Mbps
 > token ring network) between machines in my home lab that are too old to
 > even run NetBSD.)

I don't think (in general) that removing things is a good idea; but
it's increasingly difficult to keep NetBSD running on ancient
hardware. It's already infeasible to run the system compiler on most
such machines; this is only going to get worse with time. Other bloat
accumulates too, less rapidly perhaps but still so. The other day I
observed in chat that Someone(TM) needs to sit down with a slow
machine and a profiler for a while and find and kill all the
gratuitous bubble sorts, linear searches, and other things that run
too fast to be noticed on modern h/w; nobody disagreed, but on the
other hand nobody's been rushing to do it either. And other things
necessary for remaining relevant to semi-current hardware and usage,
like keeping up with X, desktop, and virtualization things, are often
in direct conflict with maintaining support for old hardware.

Meanwhile NetBSD has a persistent problem with marketing and market
positioning; to wit, we don't seem able to market and we haven't been
able to formulate any notion of who to market to or for what, or why
anyone should want to use NetBSD. The result of this is that the
15+-year-old market positioning of "of course it runs NetBSD" is still
floating around, except it's mutated into "NetBSD is an OS for
junkyard hardware". And the problem with that -- no matter how much
some people enjoy working with vintage hardware -- is that it doesn't
attract very many users or developers; especially since, as already
noted, NetBSD is not actually a very good OS for vintage hardware.

On top of this, it doesn't seem to me that there's much space in the
current and near-future computing landscape for traditional Unix; the
department login machine model is dead, and only a handful of
oldtimers use anything that can reasonably be described as a
"workstation". Meanwhile, the "desktop" software for Unix is basically
warmed-over Windows NT squatting on top of (not even integrated with)
a base Unix; and the way server farms are going there's increasingly
little role for multiuser OSes at all. An OS project that wants to
remain current has to adapt to these trends, and that means system-
level and design changes that move away from the traditional multiuser
Unix model that many of us are attached to. (This does not mean
rushing to embrace systemd -- it means things like hotplug disks,
numa-aware scheduling, filesystems for SSDs, streamlined system
configuration, and different security models; it also means keeping up
with moving standards like C++ and 802.11, and staying up to date with
necessary 3rd party software like gcc and X11.)

Because of these trends, I've been thinking for a while now that maybe
it's getting to be time to fork. That would allow having one project
that intends to stay current, with all the attendant requirements,
which probably mostly doesn't make sense on vintage hardware; and
another project that explicitly abandons most or all of that and
instead concentrates on being the best possible traditional multiuser
or workstation Unix, which does make sense on vintage hardware that
was designed for (or could be adapted to) those roles, and which also
makes sense on newer hardware to the extent it's consistent with the
traditional role.

At the moment NetBSD is trying to span both of these goal sets,
leaning somewhat towards the latter through conservatism, and not
doing either very well. I'm not at all sure that forking will improve
the situation (or that forking per se is even necessary to handle both
these foci) but it's probably at least worth thinking about.

(I am not sure, if this fork happened, which project I'd work on;
probably both.)

There's one other thing I ought to mention here, which is that I have
never entirely understood the point of running a modern OS on old
hardware; if you're going to run a modern OS, you can run it on modern
hardware and you get the exact same things as on old hardware, except
faster and smoother. It's always seemed to me that running vintage
OSes (on old hardware or even new) is more interesting, because that
way you get a complete vintage environment with its own, substantively
different, set of things. This does require maintaining the vintage
OSes, but that's part of the fun... nonetheless, because I don't
understand this point I may be suggesting something that makes no
sense to people who do, so take all the above with that grain of
salt.

-- 
David A. Holland
dholl...@netbsd.org