...
Also, if the old world is taken into consideration (which we normally
have the luxury of not having to do so), consider Ruoyao's case where a
commercial partner of Loongson wants to do this with the vendor kernel,
but the symbols are exported GPL -- in this case I doubt the GPL marking
will remain, thus creating inconsistency between upstream and vendor
kernels, and community distros are going to complain loudly about the
need to patch things. It's probably best to avoid all of this upfront.
It is pretty easy to load a non-GPL module into a distro-built
kernel and call GPL-only functions.
(And without doing horrid things with kallsyms.)
As soon as you actually need to do one, adding others isn't a problem.