The endless GPL-compliant battle
Yesterday I was helping out a friend with a very strange problem. He is using sys-kernel/gentoo-sources and x11-drivers/ati-drivers. When he was trying to build the ati-drivers package, the following error occured
FATAL: modpost: GPL-incompatible module fglrx.ko uses
GPL-only symbol 'kmemcheck_mark_initialized'
What does this mean? Simple. No-GPL code is trying to use the “kmemcheck_mark_initialized” symbol exported by the kernel, which is licensed under the GPL. So where is the problem? Is there a sort of API/ABI incompatibility between the licenses? :p
Doing some googling, I found out that there are plenty of exported GPL-only kernel symbols which prevent proprietary code such as device drivers to link to them. However, I haven’t found a solution on how ( if possible ) to disable this restriction. The solution to my problem was to disable the CONFIG_KMEMCHECK[1] from the kernel configuration. I’ve also found a couple of other cases that different kernel configuration can cause the same problem[1][2].
The other solution would be to “hack” the ati module and change the MODULE_LICENSE attribute to “GPL” instead of “Proprietary. (C) 2002 - ATI Technologies, Starnberg, GERMANY”.
If you know of a way to globally disable this feature(??) please let me know.
[1]http://alinux.tv/Kernel-2.6.34/kmemcheck.txt
[2]http://article.gmane.org/gmane.linux.debian.devel.bugs.general/375953
Gentoo kernel bug hunting
After Daniels Drake call on November issue of Gentoo Monthly Newsletter I decided to join and help gentoo kernel team to hunt, catch, and kill several kernel bugs.
So far I like the whole development process. Daniel and the rest of the guys ( on #gentoo-kernel irc room ) are trying to show us the correct ways to deal with a possible kernel bug. There is no much coding to do ( hopefully ). We just try to understand why a bug is happening without dealing with source files ( until now ).
I think that this is a good way to understand the whole Linux kernel’s tree and become more familiar with it .
If someone would like to join us, join #gentoo-kernel irc room on freenode servers . Furthermore you can read this guide about the whole kernel maintenance process










