Messages in this thread | | | From | (Linus Torvalds) | Subject | Re: 2.3.51 tulip broken | Date | 18 Mar 2000 17:58:50 -0800 |
| |
In article <Pine.LNX.4.10.10003180219400.4020-100000@vaio.greennet>, Donald Becker <becker@scyld.com> wrote: > >I feel the network driver interface from 1.2.* through 2.2.* is the cleanest >interface in the kernel.
You're basically the only one thinking so.
The fairly recent changes in 2.3.x (the so-called "softnet" changes) are just incredibly more readable and robust than the old crap was that I don't see your point at ALL.
Just about every single network driver out there was SERIOUSLY broken wrt SMP and locking. I know, I had fixed many of them. The games the drives played with timeouts, "dev->interrupt", "dev->tbusy" etc were just incredibly baroque, and had absolutely NOTHING to do with "clean".
All of that crap is gone, and it was much overdue.
And it required every single networking driver to change. Tough. But that's the advantage of open source - in a closed source binary interface world we would have been basically unable to clean things up. We would have had to maintain some ridiculous backwards compatibility layer, making drivers and networking harder to understand.
The PCI layer changes are similar. Yes, we basically got rid of the old code that used to have "slot/fn" arguments to the PCI access functions. Instead, the functions got cleaned up, and you have to use "struct pci_device" instead, forcing drivers to be a bit more structured. Changes.
You seem to think that changes are bad. I disagree. I think a cleaner interface is worth just about ANY changes.
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/
| |