On Sat, Dec 20, 2025 at 04:55:00AM +0100, Daniel Gomez wrote: > From: Daniel Gomez <[email protected]> > > The -EEXIST error code is reserved by the module loading infrastructure > to indicate that a module is already loaded. When a module's init > function returns -EEXIST, userspace tools like kmod interpret this as > "module already loaded" and treat the operation as successful, returning > 0 to the user even though the module initialization actually failed. > > This follows the precedent set by commit 54416fd76770 ("netfilter: > conntrack: helper: Replace -EEXIST by -EBUSY") which fixed the same > issue in nf_conntrack_helper_register(). > > Affected modules: > * meraki_mx100 pcengines_apuv2
As I read the description the problem is in the kmod/do_module_init(). If you need a clear way to distinguish that, use some unique error code in the kernel module loader. I fully agree with Greg that this is a slippery slope which leads to -EEXIST to be forbidden in the drivers which is no go. NAK. -- With Best Regards, Andy Shevchenko

