Recent comments by Linux creator Linus Torvalds on the lkml about the state of non-compiling drivers suggest that current 2.6.0-test kernel development is indeed focused on getting to a stable 2.6.0 release. During an earlier discussion back in April, Linus suggested it was best to leave broken drivers in their broken state until someone with the hardware is able to look into fixing them [story]. However today in a dicussion with ARM Linux maintainer Russell King [interview], Linus suggested that it has become important to get all drivers fixed to the point that they can at least compile, even if the responsible developers don't have the necessary hardware to test the resulting binary. He explains:
"The intersection of people who have the hardware, and people who have the time/knowledge to convert a driver, may be empty. Expecially for odd hardware. So let's get those drivers compiling, even if we can't test them, so that others _can_ test them."
From: Russell King [email blocked] To: Linus Torvalds [email blocked] Subject: Re: Fix up riscom8 driver to use work queues instead of task queueing. Date: Mon, 18 Aug 2003 19:28:31 +0100 On Mon, Aug 18, 2003 at 11:21:07AM -0700, Linus Torvalds wrote: > Having done a few serial drivers (not because I want to, but because > nobody else seems to be doing them), I definitely see the need for both. Of course, the more correct approach is for someone to convert them to use the new serial driver core (and fix the driver core interface to allow them to work with it.) Unfortunately I don't have the hardware for a lot of these specialist serial cards, so it's a job I've steared clear of. I've been hoping that leaving them broken will make the ones which are used stand out, and hopefully someone with the hardware would've picked them up and done the necessary conversion. But alas no. (I did my best to convert dz.c without the hardware, but it seems to have been lost into the depths of the MIPS tree... *hint*) -- Russell King ([email blocked]) The developer of ARM Linux http://www.arm.linux.org.uk/personal/aboutme.html
From: Linus Torvalds [email blocked] Subject: Re: Fix up riscom8 driver to use work queues instead of task queueing. Date: Mon, 18 Aug 2003 11:47:14 -0700 (PDT) On Mon, 18 Aug 2003, Russell King wrote: > > Of course, the more correct approach is for someone to convert them to > use the new serial driver core (and fix the driver core interface to > allow them to work with it.) Hey, I'm all for that for 2.7.x. In the meantime, they've been broken for a year, so let's just try to fix them up into a "limping along" state. I don't have the hardware either, but at least now they should be testable on UP configurations (SMP is generally still broken due to the drivers expecting to be able to disable all interrups globally instead of using proper locking). I'd be interested to hear whether the dang things work. Of course, there probably aren't that many people around with the hardware any more. I could just have added them to the BROKEN list, but since they _might_ work it seemed like a better idea to be hugely optimistic instead ;) Linus
From: Russell King [email blocked] Subject: Re: Fix up riscom8 driver to use work queues instead of task queueing. Date: Mon, 18 Aug 2003 19:59:03 +0100 On Mon, Aug 18, 2003 at 11:47:14AM -0700, Linus Torvalds wrote: > I'd be interested to hear whether the dang things work. Of course, there > probably aren't that many people around with the hardware any more. I > could just have added them to the BROKEN list, but since they _might_ work > it seemed like a better idea to be hugely optimistic instead ;) True. However, there is the opposite point of view which is equally valid. There aren't many people with the hardware, and the people that there are aren't interested in development kernel series, so even if we did convert them during 2.7, we wouldn't hear about it until 2.8. IMO its far better to do these types of conversions when users are interested in the driver (and can therefore give you bug reports) than when they are actively ignoring the development series. Both positions are equally valid. I'm not going to argue that one is more valid than the other because I have enough on my plate for the time being. 8) -- Russell King ([email blocked]) The developer of ARM Linux http://www.arm.linux.org.uk/personal/aboutme.html
From: Linus Torvalds [email blocked] Subject: Re: Fix up riscom8 driver to use work queues instead of task queueing. Date: Mon, 18 Aug 2003 12:10:17 -0700 (PDT) On Mon, 18 Aug 2003, Russell King wrote: > > True. However, there is the opposite point of view which is equally > valid. There aren't many people with the hardware, and the people > that there are aren't interested in development kernel series, so > even if we did convert them during 2.7, we wouldn't hear about it > until 2.8. Yes. However, what worries me more is that there are people who have the hardware, but because the driver won't even compile for them, they just go "oh, well, I'll try it again when the _real_ 2.6.0 hits the streets". Which obviously won't work. So I'm trying to make sure that all the broken drivers are gotten to a working state. Right now, considering how long they've been broken, that means "it must compile" so that people can test them. The "leave it broken, so that somebody will fix it properly some day" approach is a fine one for early development series. But right now I'd prefer to see patches to make drivers compile cleanly, even if people can't test them on real hardware. The intersection of people who have the hardware, and people who have the time/knowledge to convert a driver, may be empty. Expecially for odd hardware. So let's get those drivers compiling, even if we can't test them, so that others _can_ test them. Linus
YES, please fix them!
I have tried to compile new 2.6.0-test3 kernel and many of modules does not compile (errors!) and I had to "disable" those from configuration...after 10th disable, I didn't bother to try anymore. Please fix them! :)
-TSH
You have to tell us.
How can we fix them if we don't know whats broken? You need to tell the linux kernel mailing list about what modules are broken and for what .config you are trying to build. Show the actuall build errors. Tell them what version of gcc you are using.
Unless you tell us what is wrong, saying "please fix it" doesn't do shit.
And Broadcom gbic!
I wish for a working bcm5700 driver in 2.6! There is only a tigon3 driver in there, not working with the popular desktop Broadcom chipset.