[lkml]   [2006]   [Oct]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectDriver model.. expel legacy drivers?
    Hash: SHA1

    Here's a silly thought I had a while ago. Linux has no static ABI for
    device drivers, I think the general argument was between "it's slower"
    and "different hardware will have different requirements." Putting
    aside design difficulties, I've come up with an example case of a useful
    hardware driver ABI.

    As kernel development goes on, some infrastructure changes require
    drivers to be updated. Eventually some drivers become buggy and
    ill-maintained, even when they used to be legitimately working ones; and
    then developers have to take some of their time to fix them, or eject
    them from the tree.

    (I can't think of any specific cases where a driver has actually
    become buggy enough that it became a notable hazard. OSS eventually was
    deprecated and pulled out of the tree because its architecture was old
    and it wasn't worth keeping since we have ALSA now.)

    The drivers have to be shipped in the main tree as well, and the kernel
    tarballs are getting bigger. 2.6.14 was in a 37M .tar.bz2; .15 was in a
    38M; .16 and .17 in a 39M; .18 is in a 40M tarball. The size keeps
    piling up, that's more and more code that's got to be maintained and

    Writing Linux into a microkernel isn't going to happen. Linus isn't hot
    on the idea; and besides, what would the developers DO with that kind of
    disruption? Tons of projects would drop off because basement coders
    can't all rewrite their code for a new architecture (hey why not port
    your new Linux memory management patch to FreeBSD while you're at it?).
    So the only other way to isolate parts of the kernel off the main tree
    is, obviously, by making a way to move drivers out of it.

    This brings up a few potential questions:

    - Will this eventually be necessary to an absolute? Will 100M
    tarballs and hundreds of thousands of drivers be unmanageable in a
    tight, ABI-unstable monolith 10 years from now?

    - Would it ACTUALLY be worthwhile, given such a scenario, to expel
    drivers out of the tree to glue on by a static, somewhat slower but
    workable ABI so nobody has to touch the code ever?

    - Is there actually a benefit -now- to ejecting drivers from the tree,
    or are the developers pretty much comfortable polishing the stuff
    nobody normally touches here and there?

    Just curious.

    - --
    We will enslave their women, eat their children and rape their
    -- Bosc, Evil alien overlord from the fifth dimension
    Version: GnuPG v1.4.3 (GNU/Linux)
    Comment: Using GnuPG with Mozilla -

    -----END PGP SIGNATURE-----
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2006-10-14 05:21    [W:0.023 / U:3.076 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site