The first step is to determine what configuration options you need to set in order for the module to build. I use
for that; / followed by the configuration option you want will tell you where to find it and what its dependencies are. For ECHAINIV, you need to enable CRYPTO and then enable ECHAINIV (as a module since that’s what you’re after ...
It is possible when driver is not properly removed and application tried to use. If driver is removed properly kernel will give error like driver not found but never crash(In 99.99% cases until it hit any bug).
You can run modinfo modulename where modulename is the name of the module of the lsmod output (without .ko suffix). But if the module was loaded, then the .ko file must be somewhere in your filesystem like /lib/modules/$(uname -r)/....
On CentOS, and maybe other RedHat variants, just extract the corresponding file for your running kernel:
zcat /boot/symvers-$(uname -r).gz > ./Module.symvers
On Ubuntu and maybe other Debian variants, the file seams to be found automatically. However, if you need it, the file is here:
There might be multiple lists: one for kernel modules loaded within initramfs (i.e. modules necessary for basic I/O and accessing the root filesystem) and another list loaded once the root filesystem has been mounted.
For Debian and related Linux distributions like Ubuntu, there's /etc/initramfs-tools/modules for modules to be loaded in initramfs (in the ...