Hi list, First of all, in the meantime I discovered that it's NOT the timer code... A simple module entry and exit with a printk() will cause a (very) occasional fault in free_module(). It seems the problem is solved by using modpost through make. I've scoured on Google but I can't seem to readily find proper documentation on the usage of the "obj -m += xxxx.o" command in a makefile ? I've got several books such as Linux Bible (2006 edition), Linux Device Drivers 2nd edition and Understanding the Linux Kernel 3rd edition. However, not a single one mentions the "obj -m" command. One book briefly mentions the structure (basic) of a Makefile, that's it. Does anyone know where I can find a good description of Makefile, with better explanation of this command above ? Naturally something was incomplete when I manually added in the __this_module struct and so on. All I seem to need for now is a Makefile in my module source directory containing : obj-m += test.o (I only have 1 dependency so far, just for testing&studying) If I source the linux_cross_compile, setting the environment vars, and call from there : kris@Ubuntu:~/Documents/linux-2.6.26.3-at91-olimex$ make M=~/test I get proper module code it seems : LD /home/kris/test/built-in.o CC [M] /home/kris/test/test.o Building modules, stage 2. MODPOST 1 modules CC /home/kris/test/test.mod.o LD [M] /home/kris/test/test.ko If anyone can get me going on how this magical "obj -m += test.o works, I'd be grateful Best regards, Kris -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ