2.3.51 tulip broken

Jeff Garzik jgarzik@mandrakesoft.mandrakesoft.com
Fri Mar 17 03:35:37 2000


On Thu, 16 Mar 2000, Donald Becker wrote:
> On Thu, 16 Mar 2000, Jeff Garzik wrote:
> > No one expects anything from you and has not for a long time.  If you
> > wanted to actually WORK on the drivers, rather than just complain,
> > then I'm sure many people including myself would find that work
> > very valuable.

> That's complete BS, as you more than anyone knows.  I'll recap recent history:
> 
> Just few months ago I finished the design on a new probe routine that
>    Made it easy to maintain driver that would work on kernels back to 1.3.*.
>    Made it possible for a single driver to work with PCI, CardBus, and
>     hot-swap PCI.
>    Handled power control and Wake-On-*.
> 
> That work took several months to complete, during which time incremental
> versons of many driver were readily available using the frequently-changing
> interface.

This a key problem.  You do closed source development with public code
drops after many months.  That is not the Linux kernel way.  That is not
the Internet way.  The world now moves in Internet time.


> Just as I finished that work, YOU proposed a "much simpler" PCI scan
> routine, calling mine too complex.  Based on the much smaller patch, that
> version went into the kernel...  discarding months of my work and testing.

Incorrect.  My patch was dropped shortly afterwards for a much better
version from Martin Mares.  (he describes these events in another
message in this thread)

Further, your months of CLOSED SOURCE work and testing produced buggy
code which completely ignores kernel infrastructure.

I notice you chose to completely ignore my bulletted list of bugs in
pci-netif.  You did not respond to this bug list, nor was pci-netif
ever updated on your web site.


> Since then your PCI scan interface has changed many times, to the point that
> it's more complex than mine.  It had to, because the issues were the same.
> My years of experience writing CardBus-compatible drivers meant that I knew
> the issues up-front.  AFAIK, you hadn't written a single CardBus or
> hot-swap-PCI driver when you proposed your scan routine.

Correct on the last point.  And re-read the thread:  I did not need
to have written any hot-swap drivers to be able to point out all the
MMIO-related deficiencies in your code.  Deficiencies which could
have easily been corrected had you PUBLICLY discussed your changes,
instead of doing closed source development.


> But this letter isn't about this detailed, narrow issue.  It is instead
> about the attitude that such interface changes are readily, and only lightly
> considered.  Each one of those minor interface change impacted multiple
> drivers.  Many of those drivers were being actively worked on, perhaps based
> on a stable 2.2 kernel.

The Linux kernel is incrementally developed.  That is how things work in
the open source world.  If you have a better design, you cannot simply
appear one day and say "mine is better, take it or leave it."


> To you such an interface change is a minor tweak that can be with an
> automated search-and-hack.  What takes you only a minute per file to change
> might take the developer hours over the next few months to deal with to
> integrate with testing.  This is especially true when Linus insists that all
> traces of 2.2 support be expunged in the 2.3 drivers.

Did you ever stop and consider that implementing 2.3 drivers with a
backward compatibility layer for 2.2 and 2.0 kernels is more flexible,
and also easier to integrate into the mainline kernel?

Your approach of making 2.0 drivers work under newer kernels leads
to bugs because you do not work well with newer kernel infrastructure.


> > I never claimed to be perfect but at least I am trying to fix some
> > of the the bit-rotten, UNMAINTAINED net driver code currently in
> > the kernel.
> ... 
> > Finally, only the Tulip and RTL-8139 drivers are maintained by me.
> 
> You made operational and interface changes to *far* more than two drivers.
> Those were drivers with active card-specific mailing lists and development.
> Your attitude while making these changes was "Here are changes I made to an
> old driver version.  Test them for me and tell me if they work.  If they
> don't work, tell me what I did wrong."

The Linux kernel user base is the largest test base in the world.  As
Linus has pointed out to you, the people who use the drivers from
your Web site are a self-selected test group.  If a Linus tree driver
works by default for a user, you never ever hear from them.

	Jeff




-------------------------------------------------------------------
To unsubscribe send a message body containing "unsubscribe"
to linux-tulip-request@beowulf.org