[LWN Logo]

To:	linux-kernel@vger.rutgers.edu
From:	torvalds@transmeta.com (Linus Torvalds)
Subject: Re: 2.3.51 tulip broken
Date:	18 Mar 2000 17:50:29 -0800

In article <38D21310.5CA52278@kalifornia.com>,
David Ford  <david@kalifornia.com> wrote:
>
>Please explain how his code development is closed source?  This is totally BS
>and you know it.  All the code is available, all the list discussion is
>available, and patches and requests are accepted all the time.

David, pipe down.

You seem to like the approach Donald has taken. But take it from me, it
DOES NOT WORK.

The problem is that maintaining the drivers in their own small universe
means that only those people who follow the driver development will ever
even test them. Which means that people for whom the old drivers are
broken are basically the only ones testing the new drivers - and when a
new driver is finally integrated into the base kernel it won't work for
a lot of people that had a perfectly working driver in the old version.

And don't even bother telling me it doesn't happen.  It happened to _me_
more than once.  I decided that I should try to fetch Donalds latest and
greatest _despite_ the fact that he hadn't even bothered to send it to
me or to Alan, and it simply didn't work on the very basic hardware that
I had. 

I fixed the tulip driver at least twice to work with the media
detection, and sent Donald email about what I had done and why (why:
without those fixes it would notever get a link on the machine that I
used).  I don't know if my fixes ever actually made it into Donalds
version, because after the second time I just stopped bothering trying
to re-fix the same thing, and I never updated his driver again. 

In contrast, what Jeff and others have done have been of the type where
immediately when a fix is made, it is released.  Which means that if
there are problems with it, people who follow new kernel releases will
know.  Immediately.  Not in a few months time when the next "driver
release" happens. 

This is what Jeff means with "closed source".  Yes, the sources are
there.  Yes, they get released every once in a while.  But Donald
doesn't let people _participate_.  He thinks he is the only one who
should actually touch the driver, and then he gets very upset when
things change and others fix up "his" drivers to take into account the
fact that the interfaces changed. 

I accept patches from anybody. I accept patches from people other than
Jeff. If somebody sends me a bugfix for a driver, and it is so obvious
that even I can tell that it must be better than the current code, I
will apply it. Obviously, in many cases I cannot make a good judgement
(because I don't know the hardware or other issues well enough), and
that is when having a maintainer is important.

If anybody thinks that being the maintainer equals being in 100%
control, then I don't think they have understood the TRUE meaning of
Open Source. Open source is about letting go of complete control. Accept
the fact that other people are wonderful resources to fixing problems,
and let them help you.

It's about accepting the fact that open source means that interfaces
will change.  Not whining about it. And when somebody else steps forward
that does a better job of maintaining a driver, accept it gracefully.

		Linus

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/