Re: [PATCH] params: make dashes and underscores in parameter namestruly equal

From: Michal Schmidt
Date: Thu Oct 13 2011 - 10:41:18 EST


On 10/13/2011 01:28 AM, Rusty Russell wrote:
Idea is solid, implementation has a few quirks. As the name
obsolete_checksetup() implies, this was only supposed to be a crutch for
old __setup() calls. Modern code should be using module_param() or
core_param().

... instead of __setup()?
No objection to the change in do_early_param() ?

Did you have a specific example?

The specific example I had in mind was the one from Documentation/kernel-parameters.txt:

log_buf_len=1M print-fatal-signals=1
can also be entered as
log-buf-len=1M print_fatal_signals=1

'log-buf-len=1M' does not work because it's an early_param(). 'print_fatal_signals=1' does not work because it's defined as
__setup("print-fatal-signals=", ...);

Perhaps we should work on converting
them all, which would have beneficial side-effects as we poke into old
code...

Let's see how many __setup() parameters there are:
$ git grep -E '^__setup\("' |wc -l
457

Only the ones with a dash or underscore in the name:
$ git grep -E '__setup\(".*[_-].*"' | wc -l
180

It will take some time.

Thanks,
Michal
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/