module_param: make bool parameters really bool (core code)
PATCH 10/15 module_param: make bool parameters really bool (core code)
module_param(bool) used to counter-intuitively take an int. In fddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy trick.
It's time to remove the int/unsigned int option. For this version it'll simply give a warning, but it'll break next kernel version.
--- include/linux/init.h | 3 ++- init/main.c | 2 +- kernel/irq/internals.h | 2 +- kernel/irq/spurious.c | 2 +- kernel/printk.c | 8 ++++---- kernel/rcutorture.c | 4 ++-- 6 files changed, 11 insertions(+), 10 deletions(-)
include/linux/init.h +2 -1
@@ -2,6 +2,7 @@#define _LINUX_INIT_H#include <linux/compiler.h> +#include <linux/types.h> /* These macros are used to mark some functions or * initialized data (doesn't apply to uninitialized data)
@@ -156,7 +157,7 @@ void prepare_namespace(void);extern void (*late_time_init)(void ); -extern int initcall_debug; +extern bool initcall_debug;#endif
init/main.c +1 -1
@@ -654,7 +654,7 @@ static void __init do_ctors(void)#endif } -int initcall_debug; +bool initcall_debug;core_param (initcall_debug, initcall_debug, bool,0644 );static char msgbuf[64 ];
kernel/irq/internals.h +1 -1
@@ -15,7 +15,7 @@#define istate core_internal_state__do_not_mess_with_it -extern int noirqdebug; +extern bool noirqdebug;/* * Bits used by threaded handlers:
kernel/irq/spurious.c +1 -1
@@ -325,7 +325,7 @@ void note_interrupt(unsigned int irq, st desc->irqs_unhandled =0 ; } -int noirqdebug__read_mostly ; +bool noirqdebug__read_mostly ;int noirqdebug_setup (char *str) {
kernel/printk.c +4 -4
@@ -521,7 +521,7 @@ static void __call_console_drivers(unsig } } -static int __read_mostly ignore_loglevel; +static bool __read_mostly ignore_loglevel;static int __init ignore_loglevel_setup (char *str) {
@@ -695,9 +695,9 @@ static void zap_locks(void) }#if defined(CONFIG_PRINTK_TIME ) -static int printk_time =1 ; +static bool printk_time =1 ;#else -static int printk_time =0 ; +static bool printk_time =0 ;#endif module_param_named (time, printk_time, bool,S_IRUGO |S_IWUSR );
@@ -1099,7 +1099,7 @@ int update_console_cmdline(char *name, ireturn -1 ; } -int console_suspend_enabled =1 ; +bool console_suspend_enabled =1 ;EXPORT_SYMBOL (console_suspend_enabled);static int __init console_suspend_disable (char *str)
kernel/rcutorture.c +2 -2
@@ -56,8 +56,8 @@ static int nreaders = -1; /* # reader thstatic int nfakewriters =4 ;/* # fake writer threads */ static int stat_interval;/* Interval between stats, in seconds. */ /* Defaults to "only at end of test". */ -static int verbose;/* Print more debug info. */ -static int test_no_idle_hz;/* Test RCU's support for tickless idle CPUs. */ +static bool verbose;/* Print more debug info. */ +static bool test_no_idle_hz;/* Test RCU's support for tickless idle CPUs. */ static int shuffle_interval =3 ;/* Interval between shuffles (in sec)*/ static int stutter =5 ;/* Start/stop testing interval (in sec) */ static int irqreader =1 ;/* RCU readers from irq (timers). */
Quoted 8 lines · Rusty Russell
module_param(bool)used to counter-intuitively take an int. Infddd5201(mid-2009) we allowed bool or int/unsigned int using a messy trick.It's time to remove the int/unsigned int option. For this version it'll simply give a warning, but it'll break next kernel version.
Signed-off-by Rusty Russell <[email protected]>
For the rcutorture component:
Given that this portion of the patch is self-sufficient, I have queued the rcutorture portion of this patch with your signed-off-by, which I can push for either 3.3 or 3.4 (default is most likely 3.4). Of course, if you would prefer some other approach, please let me know.
Thanx, Paul
Quoted 118 lines
--- include/linux/init.h | 3 ++- init/main.c | 2 +- kernel/irq/internals.h | 2 +- kernel/irq/spurious.c | 2 +- kernel/printk.c | 8 ++++---- kernel/rcutorture.c | 4 ++-- 6 files changed, 11 insertions(+), 10 deletions(-)include/linux/init.h +2
-1@@ -2,6 +2,7 @@#define _LINUX_INIT_H#include <linux/compiler.h> +#include <linux/types.h> /* These macros are used to mark some functions or * initialized data (doesn't apply to uninitialized data) @@ -156,7 +157,7 @@ void prepare_namespace(void);extern void (*late_time_init)(void ); -extern int initcall_debug; +extern bool initcall_debug;#endif init/main.c +1
-1@@ -654,7 +654,7 @@ static void __init do_ctors(void)#endif } -int initcall_debug; +bool initcall_debug;core_param (initcall_debug, initcall_debug, bool,0644 );static char msgbuf[64 ];kernel/irq/internals.h +1
-1@@ -15,7 +15,7 @@#define istate core_internal_state__do_not_mess_with_it -extern int noirqdebug; +extern bool noirqdebug;/* * Bits used by threaded handlers: kernel/irq/spurious.c +1
-1@@ -325,7 +325,7 @@ void note_interrupt(unsigned int irq, st desc->irqs_unhandled =0 ; } -int noirqdebug__read_mostly ; +bool noirqdebug__read_mostly ;int noirqdebug_setup (char *str) {kernel/printk.c +4
-4@@ -521,7 +521,7 @@ static void __call_console_drivers(unsig } } -static int __read_mostly ignore_loglevel; +static bool __read_mostly ignore_loglevel;static int __init ignore_loglevel_setup (char *str) {@@ -695,9 +695,9 @@ static void zap_locks(void) }#if defined(CONFIG_PRINTK_TIME ) -static int printk_time =1 ; +static bool printk_time =1 ;#else -static int printk_time =0 ; +static bool printk_time =0 ;#endif module_param_named (time, printk_time, bool,S_IRUGO |S_IWUSR );@@ -1099,7 +1099,7 @@ int update_console_cmdline(char *name, ireturn -1 ; } -int console_suspend_enabled =1 ; +bool console_suspend_enabled =1 ;EXPORT_SYMBOL (console_suspend_enabled);static int __init console_suspend_disable (char *str)kernel/rcutorture.c +2
-3@@ -56,8 +56,8 @@ static int nreaders = -1; /* # reader thstatic int nfakewriters =4 ;/* # fake writer threads */ static int stat_interval;/* Interval between stats, in seconds. */ /* Defaults to "only at end of test". */ -static int verbose;/* Print more debug info. */ -static int test_no_idle_hz;/* Test RCU's support for tickless idle CPUs. */ +static bool verbose;/* Print more debug info. */ +static bool test_no_idle_hz;/* Test RCU's support for tickless idle CPUs. */ static int shuffle_interval =3 ;/* Interval between shuffles (in sec)*/ static int stutter =5 ;/* Start/stop testing interval (in sec) */ static int irqreader =1 ;/* RCU readers from irq (timers). */ --To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Quoted 12 lines · Paul E. McKenney
Quoted 8 lines · Rusty Russell
module_param(bool)used to counter-intuitively take an int. Infddd5201(mid-2009) we allowed bool or int/unsigned int using a messy trick.It's time to remove the int/unsigned int option. For this version it'll simply give a warning, but it'll break next kernel version.
Signed-off-by Rusty Russell <[email protected]>For the rcutorture component:
Quoted 7 lines
Acked-by Paul E. McKenney <[email protected]>Tested-by Paul E. McKenney <[email protected]>Given that this portion of the patch is self-sufficient, I have queued the rcutorture portion of this patch with your signed-off-by, which I can push for either 3.3 or 3.4 (default is most likely 3.4). Of course, if you would prefer some other approach, please let me know.
Nope, more than happy. Have removed it from my patch.
Cheers,
Rusty.