FSFLA: Linux Kernel Is Torvalds’ ‘Bait and Switch’

Now this is interesting. We see what is at its core a very valid concern, in practice not a problem to anyone, and, thanks to the tone of the press release, close to trolling. The Free Software Foundation Latin America is complaining about something that has been known for a while – there is some non-Free code stuck in the Linux kernel (mostly firmware). A valid issue of concern from an idealogical viewpoint, but sadly, the tone of the press release turns this valid concern into something close to trolling.

So, what exactly is the problem here? As you all know, the Linux kernel is licensed under version 2 of the GNU GPL; however, there are parts of the kernel that are not Free and are closed-source. This is mostly driver firmware code that lives in a separate folder, with warnings and all that, and this code needs to be loaded specifically. It’s basically code for which no open alternative exists.

Linus (for some reason, addressing him by his last name seems odd) has made it quite clear over the years that he chose the GPL not because of ideological reasons, but because of practical reasons. His stance towards accepting small bits of proprietary firmware code into a walled-off, non-default folder fits this mentality rather well; it increases the usefulness of the Linux kernel for those that just want something that works, while allowing Free software purists to properly ignore the code.

How much code are we talking about? Well, Linux 1.3.0, released in 1995, was entirely Free software – no binary blobs whatsoever. In 1996, version 2.0 contained 143kb of binary blobs in its 4.7MB compressed tarball, growing in size to 1.3MB in the 26MB tarball of version 2.4.19 in 2002. Linux 2.6.33 contains a total of about 2.5MB of binary blobs.

This is, at its core, a valid concern, however, most people simply won’t care. Linux has become a pretty big market, and people simply need it to work, and most of them don’t care that some parts of their machine need some binary stuff to work properly. If the choice is “optional binary blob and working hardware” or “hardware that doesn’t work”, the choice is easy for most.

Raising awareness of this concern is a noble goal at heart, but some form of understanding from the FSF-LA would’ve been prudent. The Linux kernel plays a very big role in the success of Free software, and without it, Free software still wouldn’t have a kernel. In other words, the tone of the press release isn’t particularly helpful, and surely won’t do anything to convince people – in fact, it’ll only piss people off. Addressing Linus Torvalds directly, blaming the entire situation on him and him alone, calling it a bait and switch – that’s not constructive. It’s trolling.

102 Comments

  1. WereCatf 2010-11-09 10:34 pm EST
    • raboof 2010-11-10 12:52 am EST
      • WereCatf 2010-11-10 1:00 am EST
        • raboof 2010-11-10 1:10 am EST
          • l3v1 2010-11-10 7:06 am EST
          • m_abs 2010-11-10 10:31 am EST
          • WereCatf 2010-11-10 12:20 pm EST
          • TemporalBeing 2010-11-10 6:47 pm EST
          • jabbotts 2010-11-10 6:03 pm EST
          • Kochise 2010-11-10 7:09 pm EST
    • bert64 2010-11-10 9:06 am EST
    • Sollord 2010-11-10 12:06 pm EST
  2. Macrat 2010-11-09 10:57 pm EST
    • jgagnon 2010-11-10 3:44 am EST
      • Cody Evans 2010-11-10 5:43 am EST
        • fran 2010-11-10 10:29 pm EST
        • fran 2010-11-10 10:35 pm EST
          • TheGZeus 2010-11-10 10:48 pm EST
  3. UltraZelda64 2010-11-09 11:14 pm EST
    • phoenix 2010-11-09 11:23 pm EST
      • umccullough 2010-11-09 11:29 pm EST
      • raboof 2010-11-10 1:03 am EST
        • Slambert666 2010-11-10 3:25 am EST
        • r_a_trip 2010-11-10 8:23 am EST
          • ndrw 2010-11-10 9:04 am EST
          • r_a_trip 2010-11-12 8:51 am EST
      • manjabes 2010-11-10 6:37 am EST
      • aargh 2010-11-10 11:49 am EST
        • vodoomoth 2010-11-10 12:31 pm EST
          • aargh 2010-11-10 1:16 pm EST
          • vodoomoth 2010-11-10 3:29 pm EST
      • jabbotts 2010-11-10 6:33 pm EST
  4. Soulbender 2010-11-09 11:16 pm EST
    • phoenix 2010-11-09 11:19 pm EST
      • Lennie 2010-11-09 11:55 pm EST
        • brynet 2010-11-10 12:14 am EST
      • darknexus 2010-11-10 5:21 am EST
        • gnufreex 2010-11-11 4:53 am EST
    • 0brad0 2010-11-10 1:46 am EST
      • r_a_trip 2010-11-10 8:28 am EST
      • Soulbender 2010-11-10 2:55 pm EST
        • 0brad0 2010-11-10 10:35 pm EST
  5. fran 2010-11-09 11:24 pm EST
    • vodoomoth 2010-11-10 12:39 pm EST
      • twitterfire 2010-11-10 11:16 pm EST
  6. amadensor 2010-11-09 11:29 pm EST
    • Soulbender 2010-11-09 11:43 pm EST
    • phoenix 2010-11-10 12:10 am EST
    • vodoomoth 2010-11-10 12:41 pm EST
  7. boldingd 2010-11-09 11:33 pm EST
    • WereCatf 2010-11-09 11:42 pm EST
      • boldingd 2010-11-10 7:38 am EST
    • umccullough 2010-11-09 11:43 pm EST
      • Lennie 2010-11-09 11:57 pm EST
    • raboof 2010-11-10 1:17 am EST
      • asdf 2010-11-10 2:01 pm EST
  8. galvanash 2010-11-09 11:51 pm EST
    • WorknMan 2010-11-10 12:05 am EST
      • vodoomoth 2010-11-10 12:49 pm EST
  9. reez 2010-11-10 12:04 am EST
    • brynet 2010-11-10 12:29 am EST
      • shotsman 2010-11-10 1:05 pm EST
    • galvanash 2010-11-10 12:29 am EST
  10. tomz 2010-11-10 12:25 am EST
    • jabbotts 2010-11-10 6:54 pm EST
      • fewt 2010-11-10 6:59 pm EST
        • jabbotts 2010-11-12 8:58 pm EST
  11. google_ninja 2010-11-10 12:44 am EST
    • Valhalla 2010-11-10 1:14 am EST
      • google_ninja 2010-11-10 1:30 am EST
        • Valhalla 2010-11-10 1:48 am EST
          • google_ninja 2010-11-10 4:46 am EST
          • Valhalla 2010-11-10 5:10 am EST
          • Drumhellar 2010-11-10 9:27 am EST
          • Valhalla 2010-11-10 2:21 pm EST
          • Drumhellar 2010-11-10 8:24 pm EST
          • Valhalla 2010-11-10 10:26 pm EST
          • twitterfire 2010-11-10 11:03 pm EST
          • Valhalla 2010-11-10 11:13 pm EST
    • Drumhellar 2010-11-10 9:34 am EST
  12. zunz 2010-11-10 12:49 am EST
    • sprag 2010-11-10 5:29 pm EST
  13. OpenGLCoder 2010-11-10 1:52 am EST
  14. Lazarus 2010-11-10 3:05 am EST
  15. Dirge 2010-11-10 5:33 am EST
    • l3v1 2010-11-10 7:08 am EST
  16. TheGZeus 2010-11-10 8:31 am EST
  17. Kroc 2010-11-10 2:34 pm EST
    • WereCatf 2010-11-10 2:46 pm EST
      • burnttoys 2010-11-11 8:32 am EST
        • TheGZeus 2010-11-11 12:41 pm EST
        • vivainio 2010-11-11 8:26 pm EST
    • vodoomoth 2010-11-10 3:31 pm EST
      • Kroc 2010-11-10 5:32 pm EST
  18. fewt 2010-11-10 6:17 pm EST
  19. twitterfire 2010-11-10 10:56 pm EST
  20. demetrioussharpe 2010-11-12 7:58 pm EST
    • gnufreex 2010-11-14 8:20 am EST
      • Kochise 2010-11-14 10:31 am EST
        • gnufreex 2010-11-14 9:56 pm EST
  21. bfr99 2010-11-12 9:55 pm EST