Hi, I just put this here while I still have it on my mind. Possibly I'm ignoring something that already enables this but at least I learn something by doing this then.
This came up in a recent discussion albeit for this crypto bug it did not make waves because the bug fix did not require it: https://lore.kernel.org/linux-integrity/d1gxkodmd4s8.1j12d4goeq...@kernel.org/ So the gist of is_module() would be that it would have different semantics than IS_MODULE(): it could be used to e.g. check modules in a loop. Compilation would generate a new ELF section with following entries: <ASCIIZ string><0 or 1> The string would contain module name, and 1 could be marking for being a module, and 0 for being builtin. Also, it would enabled to add lsmod -b to enumerate built-in modules, which would give nice way to carve up more information about a running test kernel. This would obviously need perhaps a new file to procfs for built-in modules (for regular there is /proc/modules). Not fighting for having this, just makig it visible. BR, Jarkko