Я пробую к insmod устаревший модуль ядра Linux, портируемый мной. Следующие ошибки появляются:
> sudo insmod camac-mx.ko
insmod: error inserting 'camac-mx.ko': -1 Invalid module format
dmesg |tail -n 1
[1312783.938299] camac_mx: disagrees about version of symbol module_layout
Как я фиксирую это?
Это означает, что вы скомпилировали модуль для другой версии ядра, чем запущенная. Обратите внимание, что даже если запущенное ядро и исходный код ядра имеют одинаковое числовое значение (например, оба являются 2.6.31-20-server), если они используют разные параметры конфигурации, вы можете увидеть эту ошибку. Также проверьте, есть ли на машине несколько версий этого модуля, и убедитесь, что вы загружаете правильную.