Re: Linux drivers management

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2006-02-06 22:17:19 +0300, Yaroslav Rastrigin <[email protected]> wrote:
> > I use two products that use out-of-tree drivers.  VMWare and NVidia cards.  
> > Fortunately, the build processes for both are rather painless, but there have 
> > been times when it has *not* been, and it was extremely frustrating.  I 
> > remember when VMWare was not doing a good job of supporting 2.6 kernels and I 
> > spent the better part of two days trying to track down a solution.  I finally 
> > did, but it was a third party, non-VMWare, patch to the VMWare code that 
> > fixed it so it would compile and run.  That's not what I consider convenience 
> > for the non-technical user.  A non-technical user would not have been able to 
> > do what I did, especially when they just want their software to work.
> And then think, why do you need to _build_ drivers in the first place. 
> Wouldn't it be better to have one vmware.ko which insmod's with all 2.6 versions , from 2.6.0 to 2.6.16-rc2 , 
> and throw "upgrade pain" away completely ? 

This would only work if we sacrified the freedom to change something.
The kernel code base changes. A lot, actually. If it didn't, there eg.
wouldn't be suspend2whatever, because the API was plain missing back
in those days. So sacrifice evolution for backwards compatibility?

These days (and it has always been that way) kernel development is a
quite active process. If core-APIs need to be changed, the person who
does it usually also updates all users of the given API. That won't
work if the drivers are not in the codebase, no chance to grep for
something on 3rd vendor's websites...

> > I want to install my machine and have everything work.  Don't make me chase 
> > all over the net trying to find a driver for my hardware.  If it's a network 
> All over the net ? Again, you're proving stable API/ABI supporters nicely. 
> If kernel has stable ABI, basic/default driver is included on installation CD, and all you need to do 
> is to launch ./install-linux.sh from CD in your shell or click OK and enter your root password in GUI box.
> Newer/better driver - just go to device manufacturer's website, download installation package and install this driver. 
> Without rebuilding. 

Not everybody is using RedHar, SuSE, Debian or whatever. Consider I
was building a custom QBus-to-PCI bridge to use some ATI/NVidia
graphics board in my 15y old VAX. If my hardware hack required
broadening some in-kernel API, do you really think some guy at NVidia
(only to name an example:-) would cross-compile their stuff for a VAX?
Given a userbase of exactly _one_ person?

> > (i.e. ethernet device) the driver had *better* be in the tree.  Trying to 
> > download the driver to another computer, transferring, etc, is enough to make 
> > me find another brand of network card.
> And what to do if you've bought new hardware, installed it and _voila_ - NO IN-TREE DRIVER exists ?
> Do you want every Linux user  going for shopping to nearest WalMart carry full linux hardware compatibility list printed out ?
> Or intree driver list ?

Usually, it's quite simple to buy correct hardware. Look for something
that's a tad more intelligent (SCSI scanners in favour of USB/parport,
postscript printers, ...) and offloads the host CPU.

> > I sometimes delay kernel updates because I don't want to mess with updating my 
> > NVidia and VMWare drivers.  This is *not* good for security.
> So who to blame ? Maybe, just look at those who don't want stable driver API ?

The Linux kernel is a project (or hundreds actually) that have choosen
their way of operation. That's evolution with not a lot of
looking-back. If you want to have a stable API, heck, just prepare
another fork and implement it. If this is what users want, they'll
take it.

> > So I did.  Please put your driver in the tree.  It will be better for all 
> > concerned.
> Please, don't force your preferences over others'

My (personal!) view is that Linux isn't actually about the users. It's
about the developers. Developers develop what they have a use for (or
become famous.) Sometimes, regular users can make good use of it, once
distributions prepared all the userland.

So if you're a developer, try to become famous for implementing a
stable API.

If you're a user, stop fighting against an operating system's kernel
and start looking for a system _you_ want to use. Maybe some WinXP
variant?

MfG, JBG

-- 
Jan-Benedict Glaw       [email protected]    . +49-172-7608481             _ O _
"Eine Freie Meinung in  einem Freien Kopf    | Gegen Zensur | Gegen Krieg  _ _ O
 für einen Freien Staat voll Freier Bürger"  | im Internet! |   im Irak!   O O O
ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux