LWN.net Logo

FSFLA: Linux kernel is "open core"

FSFLA: Linux kernel is "open core"

Posted Nov 9, 2010 19:22 UTC (Tue) by dlang (✭ supporter ✭, #313)
In reply to: FSFLA: Linux kernel is "open core" by jebba
Parent article: FSFLA: Linux kernel is "open core"

how can you tell the difference between a binary blob that is a large data table and a blob that is code that will be run on an embedded cpu?


(Log in to post comments)

FSFLA: Linux kernel is "open core"

Posted Nov 9, 2010 19:47 UTC (Tue) by jebba (✭ supporter ✭, #4439) [Link]

> how can you tell the difference between a binary blob that is a large data table and a blob that is code that will be run on an embedded cpu?

Personally, I can't; I defer to lxoliva on that. He has a script that he runs against the kernel that has an accept whitelist for code that looks like a non-free blob, but is ok. See:

http://www.fsfla.org/svnwiki/selibre/linux-libre/download...

An example would be something like this: drivers/input/keyboard/atkbd.c which has a blobby looking table, but is ok.

FSFLA: Linux kernel is "open core"

Posted Nov 10, 2010 2:26 UTC (Wed) by lxoliva (subscriber, #40702) [Link]

In the general case, that's not possible. The procedure I use starts with a sniff test, looking for regularity in the sequences of numbers or trying to make sense of them from their given names, numbers and the way they're used. If I can't determine it's just data, or find strong indication that it's code, I try to get ahold of the driver maintainer or the hardware designer. Ultimately, I have to go by whatever info I get and a sense of trust for whoever provides it and, in the worst case, make a conservative assumption that it may be software (instructions to configure a general-purpose computer to behave in a certain way) or a mix of software and pure data, and go with that.

FSFLA: Linux kernel is "open core"

Posted Nov 10, 2010 2:33 UTC (Wed) by lxoliva (subscriber, #40702) [Link]

In the general case, that's not possible. The procedure I use starts with a sniff test, looking for regularity in the sequences of numbers or trying to make sense of them from their given names, numbers and the way they're used. If I can't determine it's just data, or find strong indication that it's code, I try to get ahold of the driver maintainer or the hardware designer. Ultimately, I have to go by whatever info I get and a sense of trust for whoever provides it and, in the worst case, make a conservative assumption that it may be software (instructions to configure a general-purpose computer to behave in a certain way) or a mix of software and pure data, and go with that.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds