He is somewhat right I think. I would not normally want to run a module
with SMP overhead, but I ought to be able to load one. That means the
normal kernel should have some dummy functions for SMP locking that are
only used by modules with SMP support. The rest of the kernel can still
skip the SMP code. Then he could just set SMP support in the Makefile
and everyone would be able to use the modules.
The reverse is true too. Digital Unix did something like it for a
filesystem a few years back. The code was not safe for SMP, so they
made it run on the boot CPU only. An SMP Linux system could run
normal modules by stopping other CPUs for a moment. Depending on how
much that module gets used, stopping the other CPUs may be acceptable.