ABI stability for loadable modules

Koert van der Veer koert at cloudvps.com
Wed Oct 28 22:45:40 UTC 2015


TL;DR: Can I safely load a kernel module compiled against a slightly
different kernel?


I maintain a fleet of FreeBSD machines. We've encountered a problem with
one of the modules (iscsi doesn't allow passwords > 16 chars). I've
determined that patching the module solves the problem for us, and doesn't
affect any other kernel component. I'd like to distribute the patched
module and user-space components. My use-case allows me to unload the iscsi
module, but doesn't allow me to reboot the machine.


However, we're running an array of different kernels (10.0-RELEASE,
10.0-RELEASE-p9, 10.0-STABLE, 10.1-RELEASE, 10.1-RELEASE-p6). I'd like to
minimize the number of distinct binaries being distributed, so preferably
I'd compile only one or two. My preliminary tests on VMs show me that this
does not cause any immediate problems. Is this actually safe, or do I need
to make distinct sets of binaries for each minor version and patchlevel of
kernel in production?


More information about the freebsd-hackers mailing list