Messages in this thread | | | Subject | Re: [PATCH 3/3] init: Set initcall_debug to a default value | From | Paul Bolle <> | Date | Tue, 19 May 2015 11:46:54 +0200 |
| |
On Mon, 2015-05-18 at 14:50 +0300, Iulia Manda wrote: > Test the previously implemented macros on initcall_debug parameter, after > setting CONFIG_CMDLINE_PARSE to 'n'. > > This change is a first example for how knowing the values of kernel > parameters at build time can allow GCC constant folding and result in an > actually relevant decrease in size. Other types of parameters also need to > be handled. Also, at the moment this would only work with default values. > For being able to change those defaults and still know their values at > compile time, a pre-compiled stand-alone parser should be run on those > variables. This will be discussed in a following patch. > > The variable corresponding to initcall_debug kernel parameter is set by > default to false. Even though DEFINE_CORE_PARAM resumes to nothing when
resumes to nothing?
> CONFIG_CMDLINE_PARSE is not set, we need to use it in main.c so that it is > still defined when this option is 'y'.
> --- > include/linux/init.h | 3 ++- > init/main.c | 3 +-- > 2 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/include/linux/init.h b/include/linux/init.h > index 21b6d76..7c7ee80 100644 > --- a/include/linux/init.h > +++ b/include/linux/init.h
> -extern bool initcall_debug; > +DECLARE_CORE_PARAM(initcall_debug, false, bool);
CONFIG_CMDLINE_PARSE will never be set outside of x86, right? So does this change nothing for those other architectures?
> #endif > > diff --git a/init/main.c b/init/main.c > index 2115055..a7d0129 100644
> -bool initcall_debug; > -core_param(initcall_debug, initcall_debug, bool, 0644); > +DEFINE_CORE_PARAM(initcall_debug, initcall_debug, false, bool, 0644);
Ditto.
Thanks,
Paul Bolle
| |