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.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
Rusty Russell 2012-01-13 09:32:18 +10:30
parent 6d6a55ec08
commit 2329abfa34
5 changed files with 9 additions and 8 deletions

View File

@ -2,6 +2,7 @@
#define _LINUX_INIT_H #define _LINUX_INIT_H
#include <linux/compiler.h> #include <linux/compiler.h>
#include <linux/types.h>
/* These macros are used to mark some functions or /* These macros are used to mark some functions or
* initialized data (doesn't apply to uninitialized data) * initialized data (doesn't apply to uninitialized data)
@ -156,7 +157,7 @@ void prepare_namespace(void);
extern void (*late_time_init)(void); extern void (*late_time_init)(void);
extern int initcall_debug; extern bool initcall_debug;
#endif #endif

View File

@ -648,7 +648,7 @@ static void __init do_ctors(void)
#endif #endif
} }
int initcall_debug; bool initcall_debug;
core_param(initcall_debug, initcall_debug, bool, 0644); core_param(initcall_debug, initcall_debug, bool, 0644);
static char msgbuf[64]; static char msgbuf[64];

View File

@ -15,7 +15,7 @@
#define istate core_internal_state__do_not_mess_with_it #define istate core_internal_state__do_not_mess_with_it
extern int noirqdebug; extern bool noirqdebug;
/* /*
* Bits used by threaded handlers: * Bits used by threaded handlers:

View File

@ -325,7 +325,7 @@ void note_interrupt(unsigned int irq, struct irq_desc *desc,
desc->irqs_unhandled = 0; desc->irqs_unhandled = 0;
} }
int noirqdebug __read_mostly; bool noirqdebug __read_mostly;
int noirqdebug_setup(char *str) int noirqdebug_setup(char *str)
{ {

View File

@ -521,7 +521,7 @@ static void __call_console_drivers(unsigned start, unsigned end)
} }
} }
static int __read_mostly ignore_loglevel; static bool __read_mostly ignore_loglevel;
static int __init ignore_loglevel_setup(char *str) static int __init ignore_loglevel_setup(char *str)
{ {
@ -696,9 +696,9 @@ static void zap_locks(void)
} }
#if defined(CONFIG_PRINTK_TIME) #if defined(CONFIG_PRINTK_TIME)
static int printk_time = 1; static bool printk_time = 1;
#else #else
static int printk_time = 0; static bool printk_time = 0;
#endif #endif
module_param_named(time, printk_time, bool, S_IRUGO | S_IWUSR); module_param_named(time, printk_time, bool, S_IRUGO | S_IWUSR);
@ -1098,7 +1098,7 @@ int update_console_cmdline(char *name, int idx, char *name_new, int idx_new, cha
return -1; return -1;
} }
int console_suspend_enabled = 1; bool console_suspend_enabled = 1;
EXPORT_SYMBOL(console_suspend_enabled); EXPORT_SYMBOL(console_suspend_enabled);
static int __init console_suspend_disable(char *str) static int __init console_suspend_disable(char *str)