Вы не можете загрузить модуль, скомпилированный для другой версии ядра. То, что исходный код модуля не изменился, не означает, что двоичный файл будет таким же для другой версии ядра. Любое изменение интерфейса внутренних API-интерфейсов ядра (даже если они не видны напрямую) нарушит работу модуля ...
Поэтому ядро остается на безопасной стороне, не разрешая загрузку модулей, созданных для другой версии ядра. Кроме того, вы можете установить опцию конфигурации MODVERSIONS при сборке ядра. Это включит информацию о версии во все символы, используемые вашим модулем, и, если повезет, вы сможете загрузить ее в другую версию ядра.
Если какой-либо интерфейс, используемый вашим модулем, был изменен, результат будет таким же.