summaryrefslogtreecommitdiffstats
path: root/init/main.c
diff options
context:
space:
mode:
authorRandy Dunlap <rdunlap@infradead.org>2022-03-23 16:06:11 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2022-03-23 19:00:34 -0700
commitabc7da58c4b388ab9f6a756c0f297c29d3af665f (patch)
treed65217dc37c1019ccdf7477f1a90a729f68c0dee /init/main.c
parent105e8c2e47788a612bbc0fc135a3c75ef25f29e4 (diff)
downloadlinux-abc7da58c4b388ab9f6a756c0f297c29d3af665f.tar.bz2
init.h: improve __setup and early_param documentation
Igor noted in [1] that there are quite a few __setup() handling functions that return incorrect values. Doing this can be harmless, but it can also cause strings to be added to init's argument or environment list, polluting them. Since __setup() handling and return values are not documented, first add documentation for that. Also add more documentation for early_param() handling and return values. For __setup() functions, returning 0 (not handled) has questionable value if it is just a malformed option value, as in rodata=junk since returning 0 would just cause "rodata=junk" to be added to init's environment unnecessarily: Run /sbin/init as init process with arguments: /sbin/init with environment: HOME=/ TERM=linux splash=native rodata=junk Also, there are no recommendations on whether to print a warning when an unknown parameter value is seen. I am not addressing that here. [1] lore.kernel.org/r/64644a2f-4a20-bab3-1e15-3b2cdd0defe3@omprussia.ru Link: https://lkml.kernel.org/r/20220221050852.1147-1-rdunlap@infradead.org Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Reported-by: Igor Zhbanov <i.zhbanov@omprussia.ru> Cc: Ingo Molnar <mingo@kernel.org> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'init/main.c')
0 files changed, 0 insertions, 0 deletions