[Pkg-tpctl-devel] Fixing thinkpad-source to compile with recent kernels

Sergey Dolgov solkaa at gmail.com
Tue Jul 4 15:02:58 UTC 2006


Hi!

thinkpad-source still uses obsolete kernel API (I belive this word is 
the right one here), which prevents it from working with 2.6.16 
without CONFIG_OBSOLETE_INTERMODULE=y, and even from compiling with 
2.6.17.

I've made a couple of (trivial) changes to the source, replacing old 
MODULE_PARM macro and inter_module_* function calls with modern and 
recommended module_param and symbol_{get,put} (with the addition of 
EXPORT_SYMBOL macro).

After that, modules compile and work fine for me. The only shortcoming 
is that after the "thinkpad" module alone is loaded manually and tpctl 
is run subsequently, the remaining "rtcmosram", "superio" and "smapi" 
modules do not get loaded authomaticly like they used to. (Apparently 
the old inter_module_get_request() call in thinkpad.c made kernel load 
a module containing the requested symbol, but symbol_get() for some 
reason does not.) This is my first experience with kernel hacking :), 
and I don't know yet how to fix the problem.

My patch is in the attachment (paths are relative to 
svn://svn.debian.org/svn/pkg-tpctl/thinkpad/trunk/2.6/drivers/)

I hope this helps, and will appreciate any help from you.

--
Sergey
-------------- next part --------------
A non-text attachment was scrubbed...
Name: thinkpad.patch.gz
Type: application/octet-stream
Size: 1163 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/pkg-tpctl-devel/attachments/20060704/4a12845d/thinkpad.patch.obj


More information about the Pkg-tpctl-devel mailing list