]> git.ipfire.org Git - ipfire-2.x.git/blame - src/patches/suse-2.6.27.31/patches.kernel.org/ipmi-section-conflict.diff
Add a patch to fix Intel E100 wake-on-lan problems.
[ipfire-2.x.git] / src / patches / suse-2.6.27.31 / patches.kernel.org / ipmi-section-conflict.diff
CommitLineData
6a930a95
BS
1From: Jeff Mahoney <jeffm@suse.com>
2Subject: [PATCH] ipmi: Fix section type conflicts
3
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
7 and exported.
8
9Signed-off-by: Jeff Mahoney <jeffm@suse.com>
10---
11
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(-)
15
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" };
21
22-static int hotmod_handler(const char *val, struct kernel_param *kp);
23+int hotmod_handler(const char *val, struct kernel_param *kp);
24
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
28 return 0;
29 }
30
31-static int hotmod_handler(const char *val, struct kernel_param *kp)
32+int hotmod_handler(const char *val, struct kernel_param *kp)
33 {
34 char *str = kstrdup(val, GFP_KERNEL);
35 int rv;
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
39 */
40 static int start_now;
41
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)
44 {
45 char *endp;
46 int l;
47@@ -215,7 +215,7 @@ static int set_param_int(const char *val
48 return rv;
49 }
50
51-static int get_param_int(char *buffer, struct kernel_param *kp)
52+int get_param_int(char *buffer, struct kernel_param *kp)
53 {
54 return sprintf(buffer, "%i", *((int *)kp->arg));
55 }
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);
59
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)
62 {
63 action_fn fn = (action_fn) kp->arg;
64 int rv = 0;
65@@ -251,7 +251,7 @@ static int set_param_str(const char *val
66 return rv;
67 }
68
69-static int get_param_str(char *buffer, struct kernel_param *kp)
70+int get_param_str(char *buffer, struct kernel_param *kp)
71 {
72 action_fn fn = (action_fn) kp->arg;
73 int rv;
74@@ -263,7 +263,7 @@ static int get_param_str(char *buffer, s
75 }
76
77
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)
80 {
81 int rv = param_set_int(val, kp);
82 if (rv)