1 From: Jeff Mahoney <jeffm@suse.com>
2 Subject: [PATCH] ipmi: Fix section type conflicts
4 Module parameters can't be static since the module macros explicitly
5 put those symbols in the __param section. It causes a section conflict
6 on ia64. This doesn't occur with standard types, since they are global
9 Signed-off-by: Jeff Mahoney <jeffm@suse.com>
12 drivers/char/ipmi/ipmi_si_intf.c | 4 ++--
13 drivers/char/ipmi/ipmi_watchdog.c | 10 +++++-----
14 2 files changed, 7 insertions(+), 7 deletions(-)
16 --- a/drivers/char/ipmi/ipmi_si_intf.c
17 +++ b/drivers/char/ipmi/ipmi_si_intf.c
18 @@ -1152,7 +1152,7 @@ static unsigned int num_slave_addrs;
19 #define IPMI_MEM_ADDR_SPACE 1
20 static char *addr_space_to_str[] = { "i/o", "mem" };
22 -static int hotmod_handler(const char *val, struct kernel_param *kp);
23 +int hotmod_handler(const char *val, struct kernel_param *kp);
25 module_param_call(hotmod, hotmod_handler, NULL, NULL, 0200);
26 MODULE_PARM_DESC(hotmod, "Add and remove interfaces. See"
27 @@ -1574,7 +1574,7 @@ static int check_hotmod_int_op(const cha
31 -static int hotmod_handler(const char *val, struct kernel_param *kp)
32 +int hotmod_handler(const char *val, struct kernel_param *kp)
34 char *str = kstrdup(val, GFP_KERNEL);
36 --- a/drivers/char/ipmi/ipmi_watchdog.c
37 +++ b/drivers/char/ipmi/ipmi_watchdog.c
38 @@ -196,7 +196,7 @@ static void ipmi_unregister_watchdog(int
42 -static int set_param_int(const char *val, struct kernel_param *kp)
43 +int set_param_int(const char *val, struct kernel_param *kp)
47 @@ -215,7 +215,7 @@ static int set_param_int(const char *val
51 -static int get_param_int(char *buffer, struct kernel_param *kp)
52 +int get_param_int(char *buffer, struct kernel_param *kp)
54 return sprintf(buffer, "%i", *((int *)kp->arg));
56 @@ -227,7 +227,7 @@ static int preaction_op(const char *inva
57 static int preop_op(const char *inval, char *outval);
58 static void check_parms(void);
60 -static int set_param_str(const char *val, struct kernel_param *kp)
61 +int set_param_str(const char *val, struct kernel_param *kp)
63 action_fn fn = (action_fn) kp->arg;
65 @@ -251,7 +251,7 @@ static int set_param_str(const char *val
69 -static int get_param_str(char *buffer, struct kernel_param *kp)
70 +int get_param_str(char *buffer, struct kernel_param *kp)
72 action_fn fn = (action_fn) kp->arg;
74 @@ -263,7 +263,7 @@ static int get_param_str(char *buffer, s
78 -static int set_param_wdog_ifnum(const char *val, struct kernel_param *kp)
79 +int set_param_wdog_ifnum(const char *val, struct kernel_param *kp)
81 int rv = param_set_int(val, kp);