I am having a problem with Ubuntu 12.04 not properly recognising a custom made kernel module. The kernel module is a spoof of raw1394
. So that programs that look for the presence of a raw1394
module in memory still work properly, even though the actual module that handles IEEE 1394/FireWire communication is different. The instructions for creating the dummy raw1394 module are at wiki.sofa-framework.org.
The problem is that to load the kernel module I have to use insmod
every time.
When after rebooting I try to load the raw1394
kernel module I get the following error message:
$ sudo modprobe raw1394
FATAL: Error inserting raw1394 (/lib/modules/3.5.0-51-generic/misc/raw1394.ko): Invalid module format
However, if I run the following sequence of commands it all works fine:
$ sudo insmod raw1394.ko
$ sudo modprobe raw1394
I can't see how it can be a problem with mismatched version:
$ uname -a
Linux mech801 3.5.0-51-generic #77~precise1-Ubuntu SMP Thu Jun 5 00:48:28 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Here are the MD5 hashes. The files are the same length but I assume that insmod
must be changing something internally as it inserts the module. Both files are 3274 bytes in size.
$ md5sum /lib/modules/3.5.0-51-generic/misc/raw1394.ko ./raw1394.ko
ab06501bba1372f57115125bc7a24dfb /lib/modules/3.5.0-51-generic/misc/raw1394.ko
c3c3d2b4e2fe174a76b90af33eefc5e0 ./raw1394.ko
Is there something I am missing that is causing this Invalid module format
problem?