diff options
author | Kees Cook <keescook@chromium.org> | 2017-10-17 22:04:42 -0400 |
---|---|---|
committer | Jessica Yu <jeyu@kernel.org> | 2017-10-31 10:30:37 -0400 |
commit | e4dca7b7aa08b22893c45485d222b5807c1375ae (patch) | |
tree | b78ba1697b14cf171f053732a8d6b544cfb45891 | |
parent | b2f270e8747387335d80428c576118e7d87f69cc (diff) |
treewide: Fix function prototypes for module_param_call()
Several function prototypes for the set/get functions defined by
module_param_call() have a slightly wrong argument types. This fixes
those in an effort to clean up the calls when running under type-enforced
compiler instrumentation for CFI. This is the result of running the
following semantic patch:
@match_module_param_call_function@
declarer name module_param_call;
identifier _name, _set_func, _get_func;
expression _arg, _mode;
@@
module_param_call(_name, _set_func, _get_func, _arg, _mode);
@fix_set_prototype
depends on match_module_param_call_function@
identifier match_module_param_call_function._set_func;
identifier _val, _param;
type _val_type, _param_type;
@@
int _set_func(
-_val_type _val
+const char * _val
,
-_param_type _param
+const struct kernel_param * _param
) { ... }
@fix_get_prototype
depends on match_module_param_call_function@
identifier match_module_param_call_function._get_func;
identifier _val, _param;
type _val_type, _param_type;
@@
int _get_func(
-_val_type _val
+char * _val
,
-_param_type _param
+const struct kernel_param * _param
) { ... }
Two additional by-hand changes are included for places where the above
Coccinelle script didn't notice them:
drivers/platform/x86/thinkpad_acpi.c
fs/lockd/svc.c
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Jessica Yu <jeyu@kernel.org>
42 files changed, 87 insertions, 72 deletions
diff --git a/arch/powerpc/platforms/pseries/cmm.c b/arch/powerpc/platforms/pseries/cmm.c index 4ac419c7eb4c..560aefde06c0 100644 --- a/arch/powerpc/platforms/pseries/cmm.c +++ b/arch/powerpc/platforms/pseries/cmm.c | |||
@@ -742,7 +742,7 @@ static void cmm_exit(void) | |||
742 | * Return value: | 742 | * Return value: |
743 | * 0 on success / other on failure | 743 | * 0 on success / other on failure |
744 | **/ | 744 | **/ |
745 | static int cmm_set_disable(const char *val, struct kernel_param *kp) | 745 | static int cmm_set_disable(const char *val, const struct kernel_param *kp) |
746 | { | 746 | { |
747 | int disable = simple_strtoul(val, NULL, 10); | 747 | int disable = simple_strtoul(val, NULL, 10); |
748 | 748 | ||
diff --git a/arch/x86/oprofile/nmi_int.c b/arch/x86/oprofile/nmi_int.c index ffdbc4836b4f..174c59774cc9 100644 --- a/arch/x86/oprofile/nmi_int.c +++ b/arch/x86/oprofile/nmi_int.c | |||
@@ -592,7 +592,7 @@ enum __force_cpu_type { | |||
592 | 592 | ||
593 | static int force_cpu_type; | 593 | static int force_cpu_type; |
594 | 594 | ||
595 | static int set_cpu_type(const char *str, struct kernel_param *kp) | 595 | static int set_cpu_type(const char *str, const struct kernel_param *kp) |
596 | { | 596 | { |
597 | if (!strcmp(str, "timer")) { | 597 | if (!strcmp(str, "timer")) { |
598 | force_cpu_type = timer; | 598 | force_cpu_type = timer; |
diff --git a/drivers/acpi/button.c b/drivers/acpi/button.c index ef1856b15488..891b0921a307 100644 --- a/drivers/acpi/button.c +++ b/drivers/acpi/button.c | |||
@@ -557,7 +557,8 @@ static int acpi_button_remove(struct acpi_device *device) | |||
557 | return 0; | 557 | return 0; |
558 | } | 558 | } |
559 | 559 | ||
560 | static int param_set_lid_init_state(const char *val, struct kernel_param *kp) | 560 | static int param_set_lid_init_state(const char *val, |
561 | const struct kernel_param *kp) | ||
561 | { | 562 | { |
562 | int result = 0; | 563 | int result = 0; |
563 | 564 | ||
@@ -575,7 +576,8 @@ static int param_set_lid_init_state(const char *val, struct kernel_param *kp) | |||
575 | return result; | 576 | return result; |
576 | } | 577 | } |
577 | 578 | ||
578 | static int param_get_lid_init_state(char *buffer, struct kernel_param *kp) | 579 | static int param_get_lid_init_state(char *buffer, |
580 | const struct kernel_param *kp) | ||
579 | { | 581 | { |
580 | switch (lid_init_state) { | 582 | switch (lid_init_state) { |
581 | case ACPI_BUTTON_LID_INIT_OPEN: | 583 | case ACPI_BUTTON_LID_INIT_OPEN: |
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c index 236b14324780..ba2cebf1bb2f 100644 --- a/drivers/acpi/ec.c +++ b/drivers/acpi/ec.c | |||
@@ -1939,7 +1939,8 @@ static const struct dev_pm_ops acpi_ec_pm = { | |||
1939 | SET_SYSTEM_SLEEP_PM_OPS(acpi_ec_suspend, acpi_ec_resume) | 1939 | SET_SYSTEM_SLEEP_PM_OPS(acpi_ec_suspend, acpi_ec_resume) |
1940 | }; | 1940 | }; |
1941 | 1941 | ||
1942 | static int param_set_event_clearing(const char *val, struct kernel_param *kp) | 1942 | static int param_set_event_clearing(const char *val, |
1943 | const struct kernel_param *kp) | ||
1943 | { | 1944 | { |
1944 | int result = 0; | 1945 | int result = 0; |
1945 | 1946 | ||
@@ -1957,7 +1958,8 @@ static int param_set_event_clearing(const char *val, struct kernel_param *kp) | |||
1957 | return result; | 1958 | return result; |
1958 | } | 1959 | } |
1959 | 1960 | ||
1960 | static int param_get_event_clearing(char *buffer, struct kernel_param *kp) | 1961 | static int param_get_event_clearing(char *buffer, |
1962 | const struct kernel_param *kp) | ||
1961 | { | 1963 | { |
1962 | switch (ec_event_clearing) { | 1964 | switch (ec_event_clearing) { |
1963 | case ACPI_EC_EVT_TIMING_STATUS: | 1965 | case ACPI_EC_EVT_TIMING_STATUS: |
diff --git a/drivers/acpi/sysfs.c b/drivers/acpi/sysfs.c index 78a5a23010ab..cf2c1b2b2d64 100644 --- a/drivers/acpi/sysfs.c +++ b/drivers/acpi/sysfs.c | |||
@@ -229,7 +229,8 @@ module_param_cb(trace_method_name, ¶m_ops_trace_method, &trace_method_name, | |||
229 | module_param_cb(trace_debug_layer, ¶m_ops_trace_attrib, &acpi_gbl_trace_dbg_layer, 0644); | 229 | module_param_cb(trace_debug_layer, ¶m_ops_trace_attrib, &acpi_gbl_trace_dbg_layer, 0644); |
230 | module_param_cb(trace_debug_level, ¶m_ops_trace_attrib, &acpi_gbl_trace_dbg_level, 0644); | 230 | module_param_cb(trace_debug_level, ¶m_ops_trace_attrib, &acpi_gbl_trace_dbg_level, 0644); |
231 | 231 | ||
232 | static int param_set_trace_state(const char *val, struct kernel_param *kp) | 232 | static int param_set_trace_state(const char *val, |
233 | const struct kernel_param *kp) | ||
233 | { | 234 | { |
234 | acpi_status status; | 235 | acpi_status status; |
235 | const char *method = trace_method_name; | 236 | const char *method = trace_method_name; |
@@ -265,7 +266,7 @@ static int param_set_trace_state(const char *val, struct kernel_param *kp) | |||
265 | return 0; | 266 | return 0; |
266 | } | 267 | } |
267 | 268 | ||
268 | static int param_get_trace_state(char *buffer, struct kernel_param *kp) | 269 | static int param_get_trace_state(char *buffer, const struct kernel_param *kp) |
269 | { | 270 | { |
270 | if (!(acpi_gbl_trace_flags & ACPI_TRACE_ENABLED)) | 271 | if (!(acpi_gbl_trace_flags & ACPI_TRACE_ENABLED)) |
271 | return sprintf(buffer, "disable"); | 272 | return sprintf(buffer, "disable"); |
@@ -294,7 +295,8 @@ MODULE_PARM_DESC(aml_debug_output, | |||
294 | "To enable/disable the ACPI Debug Object output."); | 295 | "To enable/disable the ACPI Debug Object output."); |
295 | 296 | ||
296 | /* /sys/module/acpi/parameters/acpica_version */ | 297 | /* /sys/module/acpi/parameters/acpica_version */ |
297 | static int param_get_acpica_version(char *buffer, struct kernel_param *kp) | 298 | static int param_get_acpica_version(char *buffer, |
299 | const struct kernel_param *kp) | ||
298 | { | 300 | { |
299 | int result; | 301 | int result; |
300 | 302 | ||
diff --git a/drivers/android/binder.c b/drivers/android/binder.c index 0621a95b8597..c45157d71b33 100644 --- a/drivers/android/binder.c +++ b/drivers/android/binder.c | |||
@@ -150,7 +150,7 @@ static DECLARE_WAIT_QUEUE_HEAD(binder_user_error_wait); | |||
150 | static int binder_stop_on_user_error; | 150 | static int binder_stop_on_user_error; |
151 | 151 | ||
152 | static int binder_set_stop_on_user_error(const char *val, | 152 | static int binder_set_stop_on_user_error(const char *val, |
153 | struct kernel_param *kp) | 153 | const struct kernel_param *kp) |
154 | { | 154 | { |
155 | int ret; | 155 | int ret; |
156 | 156 | ||
diff --git a/drivers/char/ipmi/ipmi_poweroff.c b/drivers/char/ipmi/ipmi_poweroff.c index 9f2e3be2c5b8..676c910e990f 100644 --- a/drivers/char/ipmi/ipmi_poweroff.c +++ b/drivers/char/ipmi/ipmi_poweroff.c | |||
@@ -66,7 +66,7 @@ static void (*specific_poweroff_func)(ipmi_user_t user); | |||
66 | /* Holds the old poweroff function so we can restore it on removal. */ | 66 | /* Holds the old poweroff function so we can restore it on removal. */ |
67 | static void (*old_poweroff_func)(void); | 67 | static void (*old_poweroff_func)(void); |
68 | 68 | ||
69 | static int set_param_ifnum(const char *val, struct kernel_param *kp) | 69 | static int set_param_ifnum(const char *val, const struct kernel_param *kp) |
70 | { | 70 | { |
71 | int rv = param_set_int(val, kp); | 71 | int rv = param_set_int(val, kp); |
72 | if (rv) | 72 | if (rv) |
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c index 36f47e8d06a3..d2ac66fe0645 100644 --- a/drivers/char/ipmi/ipmi_si_intf.c +++ b/drivers/char/ipmi/ipmi_si_intf.c | |||
@@ -1345,7 +1345,7 @@ static unsigned int num_slave_addrs; | |||
1345 | #define IPMI_MEM_ADDR_SPACE 1 | 1345 | #define IPMI_MEM_ADDR_SPACE 1 |
1346 | static const char * const addr_space_to_str[] = { "i/o", "mem" }; | 1346 | static const char * const addr_space_to_str[] = { "i/o", "mem" }; |
1347 | 1347 | ||
1348 | static int hotmod_handler(const char *val, struct kernel_param *kp); | 1348 | static int hotmod_handler(const char *val, const struct kernel_param *kp); |
1349 | 1349 | ||
1350 | module_param_call(hotmod, hotmod_handler, NULL, NULL, 0200); | 1350 | module_param_call(hotmod, hotmod_handler, NULL, NULL, 0200); |
1351 | MODULE_PARM_DESC(hotmod, "Add and remove interfaces. See" | 1351 | MODULE_PARM_DESC(hotmod, "Add and remove interfaces. See" |
@@ -1811,7 +1811,7 @@ static struct smi_info *smi_info_alloc(void) | |||
1811 | return info; | 1811 | return info; |
1812 | } | 1812 | } |
1813 | 1813 | ||
1814 | static int hotmod_handler(const char *val, struct kernel_param *kp) | 1814 | static int hotmod_handler(const char *val, const struct kernel_param *kp) |
1815 | { | 1815 | { |
1816 | char *str = kstrdup(val, GFP_KERNEL); | 1816 | char *str = kstrdup(val, GFP_KERNEL); |
1817 | int rv; | 1817 | int rv; |
diff --git a/drivers/edac/edac_mc_sysfs.c b/drivers/edac/edac_mc_sysfs.c index e4fcfa84fbd3..c70ea82c815c 100644 --- a/drivers/edac/edac_mc_sysfs.c +++ b/drivers/edac/edac_mc_sysfs.c | |||
@@ -50,7 +50,7 @@ int edac_mc_get_poll_msec(void) | |||
50 | return edac_mc_poll_msec; | 50 | return edac_mc_poll_msec; |
51 | } | 51 | } |
52 | 52 | ||
53 | static int edac_set_poll_msec(const char *val, struct kernel_param *kp) | 53 | static int edac_set_poll_msec(const char *val, const struct kernel_param *kp) |
54 | { | 54 | { |
55 | unsigned long l; | 55 | unsigned long l; |
56 | int ret; | 56 | int ret; |
diff --git a/drivers/edac/edac_module.c b/drivers/edac/edac_module.c index 172598a27d7d..32a931d0cb71 100644 --- a/drivers/edac/edac_module.c +++ b/drivers/edac/edac_module.c | |||
@@ -19,7 +19,8 @@ | |||
19 | 19 | ||
20 | #ifdef CONFIG_EDAC_DEBUG | 20 | #ifdef CONFIG_EDAC_DEBUG |
21 | 21 | ||
22 | static int edac_set_debug_level(const char *buf, struct kernel_param *kp) | 22 | static int edac_set_debug_level(const char *buf, |
23 | const struct kernel_param *kp) | ||
23 | { | 24 | { |
24 | unsigned long val; | 25 | unsigned long val; |
25 | int ret; | 26 | int ret; |
diff --git a/drivers/hid/hid-magicmouse.c b/drivers/hid/hid-magicmouse.c index 20b40ad26325..42ed887ba0be 100644 --- a/drivers/hid/hid-magicmouse.c +++ b/drivers/hid/hid-magicmouse.c | |||
@@ -34,7 +34,8 @@ module_param(emulate_scroll_wheel, bool, 0644); | |||
34 | MODULE_PARM_DESC(emulate_scroll_wheel, "Emulate a scroll wheel"); | 34 | MODULE_PARM_DESC(emulate_scroll_wheel, "Emulate a scroll wheel"); |
35 | 35 | ||
36 | static unsigned int scroll_speed = 32; | 36 | static unsigned int scroll_speed = 32; |
37 | static int param_set_scroll_speed(const char *val, struct kernel_param *kp) { | 37 | static int param_set_scroll_speed(const char *val, |
38 | const struct kernel_param *kp) { | ||
38 | unsigned long speed; | 39 | unsigned long speed; |
39 | if (!val || kstrtoul(val, 0, &speed) || speed > 63) | 40 | if (!val || kstrtoul(val, 0, &speed) || speed > 63) |
40 | return -EINVAL; | 41 | return -EINVAL; |
diff --git a/drivers/ide/ide.c b/drivers/ide/ide.c index d127ace6aa57..6ee866fcc5dd 100644 --- a/drivers/ide/ide.c +++ b/drivers/ide/ide.c | |||
@@ -244,7 +244,7 @@ struct chs_geom { | |||
244 | static unsigned int ide_disks; | 244 | static unsigned int ide_disks; |
245 | static struct chs_geom ide_disks_chs[MAX_HWIFS * MAX_DRIVES]; | 245 | static struct chs_geom ide_disks_chs[MAX_HWIFS * MAX_DRIVES]; |
246 | 246 | ||
247 | static int ide_set_disk_chs(const char *str, struct kernel_param *kp) | 247 | static int ide_set_disk_chs(const char *str, const struct kernel_param *kp) |
248 | { | 248 | { |
249 | unsigned int a, b, c = 0, h = 0, s = 0, i, j = 1; | 249 | unsigned int a, b, c = 0, h = 0, s = 0, i, j = 1; |
250 | 250 | ||
@@ -328,7 +328,7 @@ static void ide_dev_apply_params(ide_drive_t *drive, u8 unit) | |||
328 | 328 | ||
329 | static unsigned int ide_ignore_cable; | 329 | static unsigned int ide_ignore_cable; |
330 | 330 | ||
331 | static int ide_set_ignore_cable(const char *s, struct kernel_param *kp) | 331 | static int ide_set_ignore_cable(const char *s, const struct kernel_param *kp) |
332 | { | 332 | { |
333 | int i, j = 1; | 333 | int i, j = 1; |
334 | 334 | ||
diff --git a/drivers/infiniband/hw/qib/qib_iba7322.c b/drivers/infiniband/hw/qib/qib_iba7322.c index 14cadf6d6214..a45e46098914 100644 --- a/drivers/infiniband/hw/qib/qib_iba7322.c +++ b/drivers/infiniband/hw/qib/qib_iba7322.c | |||
@@ -150,7 +150,7 @@ static struct kparam_string kp_txselect = { | |||
150 | .string = txselect_list, | 150 | .string = txselect_list, |
151 | .maxlen = MAX_ATTEN_LEN | 151 | .maxlen = MAX_ATTEN_LEN |
152 | }; | 152 | }; |
153 | static int setup_txselect(const char *, struct kernel_param *); | 153 | static int setup_txselect(const char *, const struct kernel_param *); |
154 | module_param_call(txselect, setup_txselect, param_get_string, | 154 | module_param_call(txselect, setup_txselect, param_get_string, |
155 | &kp_txselect, S_IWUSR | S_IRUGO); | 155 | &kp_txselect, S_IWUSR | S_IRUGO); |
156 | MODULE_PARM_DESC(txselect, | 156 | MODULE_PARM_DESC(txselect, |
@@ -6169,7 +6169,7 @@ static void set_no_qsfp_atten(struct qib_devdata *dd, int change) | |||
6169 | } | 6169 | } |
6170 | 6170 | ||
6171 | /* handle the txselect parameter changing */ | 6171 | /* handle the txselect parameter changing */ |
6172 | static int setup_txselect(const char *str, struct kernel_param *kp) | 6172 | static int setup_txselect(const char *str, const struct kernel_param *kp) |
6173 | { | 6173 | { |
6174 | struct qib_devdata *dd; | 6174 | struct qib_devdata *dd; |
6175 | unsigned long val; | 6175 | unsigned long val; |
diff --git a/drivers/infiniband/ulp/srpt/ib_srpt.c b/drivers/infiniband/ulp/srpt/ib_srpt.c index 9e8e9220f816..9612e5bdfb00 100644 --- a/drivers/infiniband/ulp/srpt/ib_srpt.c +++ b/drivers/infiniband/ulp/srpt/ib_srpt.c | |||
@@ -80,7 +80,7 @@ module_param(srpt_srq_size, int, 0444); | |||
80 | MODULE_PARM_DESC(srpt_srq_size, | 80 | MODULE_PARM_DESC(srpt_srq_size, |
81 | "Shared receive queue (SRQ) size."); | 81 | "Shared receive queue (SRQ) size."); |
82 | 82 | ||
83 | static int srpt_get_u64_x(char *buffer, struct kernel_param *kp) | 83 | static int srpt_get_u64_x(char *buffer, const struct kernel_param *kp) |
84 | { | 84 | { |
85 | return sprintf(buffer, "0x%016llx", *(u64 *)kp->arg); | 85 | return sprintf(buffer, "0x%016llx", *(u64 *)kp->arg); |
86 | } | 86 | } |
diff --git a/drivers/isdn/hardware/mISDN/avmfritz.c b/drivers/isdn/hardware/mISDN/avmfritz.c index dce6632daae1..ae2b2669af1b 100644 --- a/drivers/isdn/hardware/mISDN/avmfritz.c +++ b/drivers/isdn/hardware/mISDN/avmfritz.c | |||
@@ -156,7 +156,7 @@ _set_debug(struct fritzcard *card) | |||
156 | } | 156 | } |
157 | 157 | ||
158 | static int | 158 | static int |
159 | set_debug(const char *val, struct kernel_param *kp) | 159 | set_debug(const char *val, const struct kernel_param *kp) |
160 | { | 160 | { |
161 | int ret; | 161 | int ret; |
162 | struct fritzcard *card; | 162 | struct fritzcard *card; |
diff --git a/drivers/isdn/hardware/mISDN/mISDNinfineon.c b/drivers/isdn/hardware/mISDN/mISDNinfineon.c index d5bdbaf93a1a..1fc290659e94 100644 --- a/drivers/isdn/hardware/mISDN/mISDNinfineon.c +++ b/drivers/isdn/hardware/mISDN/mISDNinfineon.c | |||
@@ -244,7 +244,7 @@ _set_debug(struct inf_hw *card) | |||
244 | } | 244 | } |
245 | 245 | ||
246 | static int | 246 | static int |
247 | set_debug(const char *val, struct kernel_param *kp) | 247 | set_debug(const char *val, const struct kernel_param *kp) |
248 | { | 248 | { |
249 | int ret; | 249 | int ret; |
250 | struct inf_hw *card; | 250 | struct inf_hw *card; |
diff --git a/drivers/isdn/hardware/mISDN/netjet.c b/drivers/isdn/hardware/mISDN/netjet.c index 6a6d848bd18e..89d9ba8ed535 100644 --- a/drivers/isdn/hardware/mISDN/netjet.c +++ b/drivers/isdn/hardware/mISDN/netjet.c | |||
@@ -111,7 +111,7 @@ _set_debug(struct tiger_hw *card) | |||
111 | } | 111 | } |
112 | 112 | ||
113 | static int | 113 | static int |
114 | set_debug(const char *val, struct kernel_param *kp) | 114 | set_debug(const char *val, const struct kernel_param *kp) |
115 | { | 115 | { |
116 | int ret; | 116 | int ret; |
117 | struct tiger_hw *card; | 117 | struct tiger_hw *card; |
diff --git a/drivers/isdn/hardware/mISDN/speedfax.c b/drivers/isdn/hardware/mISDN/speedfax.c index 9815bb4eec9c..1f1446ed8d5f 100644 --- a/drivers/isdn/hardware/mISDN/speedfax.c +++ b/drivers/isdn/hardware/mISDN/speedfax.c | |||
@@ -94,7 +94,7 @@ _set_debug(struct sfax_hw *card) | |||
94 | } | 94 | } |
95 | 95 | ||
96 | static int | 96 | static int |
97 | set_debug(const char *val, struct kernel_param *kp) | 97 | set_debug(const char *val, const struct kernel_param *kp) |
98 | { | 98 | { |
99 | int ret; | 99 | int ret; |
100 | struct sfax_hw *card; | 100 | struct sfax_hw *card; |
diff --git a/drivers/isdn/hardware/mISDN/w6692.c b/drivers/isdn/hardware/mISDN/w6692.c index d80072fef434..209036a4af3a 100644 --- a/drivers/isdn/hardware/mISDN/w6692.c +++ b/drivers/isdn/hardware/mISDN/w6692.c | |||
@@ -101,7 +101,7 @@ _set_debug(struct w6692_hw *card) | |||
101 | } | 101 | } |
102 | 102 | ||
103 | static int | 103 | static int |
104 | set_debug(const char *val, struct kernel_param *kp) | 104 | set_debug(const char *val, const struct kernel_param *kp) |
105 | { | 105 | { |
106 | int ret; | 106 | int ret; |
107 | struct w6692_hw *card; | 107 | struct w6692_hw *card; |
diff --git a/drivers/md/md.c b/drivers/md/md.c index 0ff1bbf6c90e..276c7ecedf10 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c | |||
@@ -5357,7 +5357,7 @@ static struct kobject *md_probe(dev_t dev, int *part, void *data) | |||
5357 | return NULL; | 5357 | return NULL; |
5358 | } | 5358 | } |
5359 | 5359 | ||
5360 | static int add_named_array(const char *val, struct kernel_param *kp) | 5360 | static int add_named_array(const char *val, const struct kernel_param *kp) |
5361 | { | 5361 | { |
5362 | /* | 5362 | /* |
5363 | * val must be "md_*" or "mdNNN". | 5363 | * val must be "md_*" or "mdNNN". |
@@ -9274,11 +9274,11 @@ static __exit void md_exit(void) | |||
9274 | subsys_initcall(md_init); | 9274 | subsys_initcall(md_init); |
9275 | module_exit(md_exit) | 9275 | module_exit(md_exit) |
9276 | 9276 | ||
9277 | static int get_ro(char *buffer, struct kernel_param *kp) | 9277 | static int get_ro(char *buffer, const struct kernel_param *kp) |
9278 | { | 9278 | { |
9279 | return sprintf(buffer, "%d", start_readonly); | 9279 | return sprintf(buffer, "%d", start_readonly); |
9280 | } | 9280 | } |
9281 | static int set_ro(const char *val, struct kernel_param *kp) | 9281 | static int set_ro(const char *val, const struct kernel_param *kp) |
9282 | { | 9282 | { |
9283 | return kstrtouint(val, 10, (unsigned int *)&start_readonly); | 9283 | return kstrtouint(val, 10, (unsigned int *)&start_readonly); |
9284 | } | 9284 | } |
diff --git a/drivers/media/pci/tw686x/tw686x-core.c b/drivers/media/pci/tw686x/tw686x-core.c index 336e2f9bc1b6..b762e5f0ba1d 100644 --- a/drivers/media/pci/tw686x/tw686x-core.c +++ b/drivers/media/pci/tw686x/tw686x-core.c | |||
@@ -72,12 +72,12 @@ static const char *dma_mode_name(unsigned int mode) | |||
72 | } | 72 | } |
73 | } | 73 | } |
74 | 74 | ||
75 | static int tw686x_dma_mode_get(char *buffer, struct kernel_param *kp) | 75 | static int tw686x_dma_mode_get(char *buffer, const struct kernel_param *kp) |
76 | { | 76 | { |
77 | return sprintf(buffer, "%s", dma_mode_name(dma_mode)); | 77 | return sprintf(buffer, "%s", dma_mode_name(dma_mode)); |
78 | } | 78 | } |
79 | 79 | ||
80 | static int tw686x_dma_mode_set(const char *val, struct kernel_param *kp) | 80 | static int tw686x_dma_mode_set(const char *val, const struct kernel_param *kp) |
81 | { | 81 | { |
82 | if (!strcasecmp(val, dma_mode_name(TW686X_DMA_MODE_MEMCPY))) | 82 | if (!strcasecmp(val, dma_mode_name(TW686X_DMA_MODE_MEMCPY))) |
83 | dma_mode = TW686X_DMA_MODE_MEMCPY; | 83 | dma_mode = TW686X_DMA_MODE_MEMCPY; |
diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c index 6d22b22cb35b..28b91b7d756f 100644 --- a/drivers/media/usb/uvc/uvc_driver.c +++ b/drivers/media/usb/uvc/uvc_driver.c | |||
@@ -2230,7 +2230,7 @@ static int uvc_reset_resume(struct usb_interface *intf) | |||
2230 | * Module parameters | 2230 | * Module parameters |
2231 | */ | 2231 | */ |
2232 | 2232 | ||
2233 | static int uvc_clock_param_get(char *buffer, struct kernel_param *kp) | 2233 | static int uvc_clock_param_get(char *buffer, const struct kernel_param *kp) |
2234 | { | 2234 | { |
2235 | if (uvc_clock_param == CLOCK_MONOTONIC) | 2235 | if (uvc_clock_param == CLOCK_MONOTONIC) |
2236 | return sprintf(buffer, "CLOCK_MONOTONIC"); | 2236 | return sprintf(buffer, "CLOCK_MONOTONIC"); |
@@ -2238,7 +2238,7 @@ static int uvc_clock_param_get(char *buffer, struct kernel_param *kp) | |||
2238 | return sprintf(buffer, "CLOCK_REALTIME"); | 2238 | return sprintf(buffer, "CLOCK_REALTIME"); |
2239 | } | 2239 | } |
2240 | 2240 | ||
2241 | static int uvc_clock_param_set(const char *val, struct kernel_param *kp) | 2241 | static int uvc_clock_param_set(const char *val, const struct kernel_param *kp) |
2242 | { | 2242 | { |
2243 | if (strncasecmp(val, "clock_", strlen("clock_")) == 0) | 2243 | if (strncasecmp(val, "clock_", strlen("clock_")) == 0) |
2244 | val += strlen("clock_"); | 2244 | val += strlen("clock_"); |
diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c index 84eab28665f3..7a93400eea2a 100644 --- a/drivers/message/fusion/mptbase.c +++ b/drivers/message/fusion/mptbase.c | |||
@@ -99,7 +99,7 @@ module_param(mpt_channel_mapping, int, 0); | |||
99 | MODULE_PARM_DESC(mpt_channel_mapping, " Mapping id's to channels (default=0)"); | 99 | MODULE_PARM_DESC(mpt_channel_mapping, " Mapping id's to channels (default=0)"); |
100 | 100 | ||
101 | static int mpt_debug_level; | 101 | static int mpt_debug_level; |
102 | static int mpt_set_debug_level(const char *val, struct kernel_param *kp); | 102 | static int mpt_set_debug_level(const char *val, const struct kernel_param *kp); |
103 | module_param_call(mpt_debug_level, mpt_set_debug_level, param_get_int, | 103 | module_param_call(mpt_debug_level, mpt_set_debug_level, param_get_int, |
104 | &mpt_debug_level, 0600); | 104 | &mpt_debug_level, 0600); |
105 | MODULE_PARM_DESC(mpt_debug_level, | 105 | MODULE_PARM_DESC(mpt_debug_level, |
@@ -242,7 +242,7 @@ pci_enable_io_access(struct pci_dev *pdev) | |||
242 | pci_write_config_word(pdev, PCI_COMMAND, command_reg); | 242 | pci_write_config_word(pdev, PCI_COMMAND, command_reg); |
243 | } | 243 | } |
244 | 244 | ||
245 | static int mpt_set_debug_level(const char *val, struct kernel_param *kp) | 245 | static int mpt_set_debug_level(const char *val, const struct kernel_param *kp) |
246 | { | 246 | { |
247 | int ret = param_set_int(val, kp); | 247 | int ret = param_set_int(val, kp); |
248 | MPT_ADAPTER *ioc; | 248 | MPT_ADAPTER *ioc; |
diff --git a/drivers/misc/kgdbts.c b/drivers/misc/kgdbts.c index fc7efedbc4be..24108bfad889 100644 --- a/drivers/misc/kgdbts.c +++ b/drivers/misc/kgdbts.c | |||
@@ -1132,7 +1132,8 @@ static void kgdbts_put_char(u8 chr) | |||
1132 | ts.run_test(0, chr); | 1132 | ts.run_test(0, chr); |
1133 | } | 1133 | } |
1134 | 1134 | ||
1135 | static int param_set_kgdbts_var(const char *kmessage, struct kernel_param *kp) | 1135 | static int param_set_kgdbts_var(const char *kmessage, |
1136 | const struct kernel_param *kp) | ||
1136 | { | 1137 | { |
1137 | int len = strlen(kmessage); | 1138 | int len = strlen(kmessage); |
1138 | 1139 | ||
diff --git a/drivers/mtd/devices/block2mtd.c b/drivers/mtd/devices/block2mtd.c index 7c887f111a7d..62fd6905c648 100644 --- a/drivers/mtd/devices/block2mtd.c +++ b/drivers/mtd/devices/block2mtd.c | |||
@@ -431,7 +431,7 @@ static int block2mtd_setup2(const char *val) | |||
431 | } | 431 | } |
432 | 432 | ||
433 | 433 | ||
434 | static int block2mtd_setup(const char *val, struct kernel_param *kp) | 434 | static int block2mtd_setup(const char *val, const struct kernel_param *kp) |
435 | { | 435 | { |
436 | #ifdef MODULE | 436 | #ifdef MODULE |
437 | return block2mtd_setup2(val); | 437 | return block2mtd_setup2(val); |
diff --git a/drivers/mtd/devices/phram.c b/drivers/mtd/devices/phram.c index 8b66e52ca3cc..7287696a21f9 100644 --- a/drivers/mtd/devices/phram.c +++ b/drivers/mtd/devices/phram.c | |||
@@ -266,7 +266,7 @@ static int phram_setup(const char *val) | |||
266 | return ret; | 266 | return ret; |
267 | } | 267 | } |
268 | 268 | ||
269 | static int phram_param_call(const char *val, struct kernel_param *kp) | 269 | static int phram_param_call(const char *val, const struct kernel_param *kp) |
270 | { | 270 | { |
271 | #ifdef MODULE | 271 | #ifdef MODULE |
272 | return phram_setup(val); | 272 | return phram_setup(val); |
diff --git a/drivers/mtd/ubi/build.c b/drivers/mtd/ubi/build.c index 842550b5712a..136ce05d2328 100644 --- a/drivers/mtd/ubi/build.c +++ b/drivers/mtd/ubi/build.c | |||
@@ -1334,7 +1334,7 @@ static int bytes_str_to_int(const char *str) | |||
1334 | * This function returns zero in case of success and a negative error code in | 1334 | * This function returns zero in case of success and a negative error code in |
1335 | * case of error. | 1335 | * case of error. |
1336 | */ | 1336 | */ |
1337 | static int ubi_mtd_param_parse(const char *val, struct kernel_param *kp) | 1337 | static int ubi_mtd_param_parse(const char *val, const struct kernel_param *kp) |
1338 | { | 1338 | { |
1339 | int i, len; | 1339 | int i, len; |
1340 | struct mtd_dev_param *p; | 1340 | struct mtd_dev_param *p; |
diff --git a/drivers/pci/pcie/aspm.c b/drivers/pci/pcie/aspm.c index 1dfa10cc566b..ca3ee0f7e61d 100644 --- a/drivers/pci/pcie/aspm.c +++ b/drivers/pci/pcie/aspm.c | |||
@@ -1060,7 +1060,8 @@ void pci_disable_link_state(struct pci_dev *pdev, int state) | |||
1060 | } | 1060 | } |
1061 | EXPORT_SYMBOL(pci_disable_link_state); | 1061 | EXPORT_SYMBOL(pci_disable_link_state); |
1062 | 1062 | ||
1063 | static int pcie_aspm_set_policy(const char *val, struct kernel_param *kp) | 1063 | static int pcie_aspm_set_policy(const char *val, |
1064 | const struct kernel_param *kp) | ||
1064 | { | 1065 | { |
1065 | int i; | 1066 | int i; |
1066 | struct pcie_link_state *link; | 1067 | struct pcie_link_state *link; |
@@ -1087,7 +1088,7 @@ static int pcie_aspm_set_policy(const char *val, struct kernel_param *kp) | |||
1087 | return 0; | 1088 | return 0; |
1088 | } | 1089 | } |
1089 | 1090 | ||
1090 | static int pcie_aspm_get_policy(char *buffer, struct kernel_param *kp) | 1091 | static int pcie_aspm_get_policy(char *buffer, const struct kernel_param *kp) |
1091 | { | 1092 | { |
1092 | int i, cnt = 0; | 1093 | int i, cnt = 0; |
1093 | for (i = 0; i < ARRAY_SIZE(policy_str); i++) | 1094 | for (i = 0; i < ARRAY_SIZE(policy_str); i++) |
diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c index 2242d6035d9e..3887dfeafc96 100644 --- a/drivers/platform/x86/thinkpad_acpi.c +++ b/drivers/platform/x86/thinkpad_acpi.c | |||
@@ -9543,7 +9543,7 @@ static struct ibm_init_struct ibms_init[] __initdata = { | |||
9543 | }, | 9543 | }, |
9544 | }; | 9544 | }; |
9545 | 9545 | ||
9546 | static int __init set_ibm_param(const char *val, struct kernel_param *kp) | 9546 | static int __init set_ibm_param(const char *val, const struct kernel_param *kp) |
9547 | { | 9547 | { |
9548 | unsigned int i; | 9548 | unsigned int i; |
9549 | struct ibm_struct *ibm; | 9549 | struct ibm_struct *ibm; |
diff --git a/drivers/scsi/fcoe/fcoe_transport.c b/drivers/scsi/fcoe/fcoe_transport.c index 375c536cbc68..c5eb0c468f0b 100644 --- a/drivers/scsi/fcoe/fcoe_transport.c +++ b/drivers/scsi/fcoe/fcoe_transport.c | |||
@@ -32,13 +32,13 @@ MODULE_AUTHOR("Open-FCoE.org"); | |||
32 | MODULE_DESCRIPTION("FIP discovery protocol and FCoE transport for FCoE HBAs"); | 32 | MODULE_DESCRIPTION("FIP discovery protocol and FCoE transport for FCoE HBAs"); |
33 | MODULE_LICENSE("GPL v2"); | 33 | MODULE_LICENSE("GPL v2"); |
34 | 34 | ||
35 | static int fcoe_transport_create(const char *, struct kernel_param *); | 35 | static int fcoe_transport_create(const char *, const struct kernel_param *); |
36 | static int fcoe_transport_destroy(const char *, struct kernel_param *); | 36 | static int fcoe_transport_destroy(const char *, const struct kernel_param *); |
37 | static int fcoe_transport_show(char *buffer, const struct kernel_param *kp); | 37 | static int fcoe_transport_show(char *buffer, const struct kernel_param *kp); |
38 | static struct fcoe_transport *fcoe_transport_lookup(struct net_device *device); | 38 | static struct fcoe_transport *fcoe_transport_lookup(struct net_device *device); |
39 | static struct fcoe_transport *fcoe_netdev_map_lookup(struct net_device *device); | 39 | static struct fcoe_transport *fcoe_netdev_map_lookup(struct net_device *device); |
40 | static int fcoe_transport_enable(const char *, struct kernel_param *); | 40 | static int fcoe_transport_enable(const char *, const struct kernel_param *); |
41 | static int fcoe_transport_disable(const char *, struct kernel_param *); | 41 | static int fcoe_transport_disable(const char *, const struct kernel_param *); |
42 | static int libfcoe_device_notification(struct notifier_block *notifier, | 42 | static int libfcoe_device_notification(struct notifier_block *notifier, |
43 | ulong event, void *ptr); | 43 | ulong event, void *ptr); |
44 | 44 | ||
@@ -865,7 +865,8 @@ EXPORT_SYMBOL(fcoe_ctlr_destroy_store); | |||
865 | * | 865 | * |
866 | * Returns: 0 for success | 866 | * Returns: 0 for success |
867 | */ | 867 | */ |
868 | static int fcoe_transport_create(const char *buffer, struct kernel_param *kp) | 868 | static int fcoe_transport_create(const char *buffer, |
869 | const struct kernel_param *kp) | ||
869 | { | 870 | { |
870 | int rc = -ENODEV; | 871 | int rc = -ENODEV; |
871 | struct net_device *netdev = NULL; | 872 | struct net_device *netdev = NULL; |
@@ -930,7 +931,8 @@ out_nodev: | |||
930 | * | 931 | * |
931 | * Returns: 0 for success | 932 | * Returns: 0 for success |
932 | */ | 933 | */ |
933 | static int fcoe_transport_destroy(const char *buffer, struct kernel_param *kp) | 934 | static int fcoe_transport_destroy(const char *buffer, |
935 | const struct kernel_param *kp) | ||
934 | { | 936 | { |
935 | int rc = -ENODEV; | 937 | int rc = -ENODEV; |
936 | struct net_device *netdev = NULL; | 938 | struct net_device *netdev = NULL; |
@@ -974,7 +976,8 @@ out_nodev: | |||
974 | * | 976 | * |
975 | * Returns: 0 for success | 977 | * Returns: 0 for success |
976 | */ | 978 | */ |
977 | static int fcoe_transport_disable(const char *buffer, struct kernel_param *kp) | 979 | static int fcoe_transport_disable(const char *buffer, |
980 | const struct kernel_param *kp) | ||
978 | { | 981 | { |
979 | int rc = -ENODEV; | 982 | int rc = -ENODEV; |
980 | struct net_device *netdev = NULL; | 983 | struct net_device *netdev = NULL; |
@@ -1008,7 +1011,8 @@ out_nodev: | |||
1008 | * | 1011 | * |
1009 | * Returns: 0 for success | 1012 | * Returns: 0 for success |
1010 | */ | 1013 | */ |
1011 | static int fcoe_transport_enable(const char *buffer, struct kernel_param *kp) | 1014 | static int fcoe_transport_enable(const char *buffer, |
1015 | const struct kernel_param *kp) | ||
1012 | { | 1016 | { |
1013 | int rc = -ENODEV; | 1017 | int rc = -ENODEV; |
1014 | struct net_device *netdev = NULL; | 1018 | struct net_device *netdev = NULL; |
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c b/drivers/scsi/mpt3sas/mpt3sas_base.c index 87999905bca3..3d36deee8285 100644 --- a/drivers/scsi/mpt3sas/mpt3sas_base.c +++ b/drivers/scsi/mpt3sas/mpt3sas_base.c | |||
@@ -105,7 +105,7 @@ _base_get_ioc_facts(struct MPT3SAS_ADAPTER *ioc); | |||
105 | * | 105 | * |
106 | */ | 106 | */ |
107 | static int | 107 | static int |
108 | _scsih_set_fwfault_debug(const char *val, struct kernel_param *kp) | 108 | _scsih_set_fwfault_debug(const char *val, const struct kernel_param *kp) |
109 | { | 109 | { |
110 | int ret = param_set_int(val, kp); | 110 | int ret = param_set_int(val, kp); |
111 | struct MPT3SAS_ADAPTER *ioc; | 111 | struct MPT3SAS_ADAPTER *ioc; |
diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c b/drivers/scsi/mpt3sas/mpt3sas_scsih.c index 22998cbd538f..07719da7ae4a 100644 --- a/drivers/scsi/mpt3sas/mpt3sas_scsih.c +++ b/drivers/scsi/mpt3sas/mpt3sas_scsih.c | |||
@@ -281,7 +281,7 @@ struct _scsi_io_transfer { | |||
281 | * Note: The logging levels are defined in mpt3sas_debug.h. | 281 | * Note: The logging levels are defined in mpt3sas_debug.h. |
282 | */ | 282 | */ |
283 | static int | 283 | static int |
284 | _scsih_set_debug_level(const char *val, struct kernel_param *kp) | 284 | _scsih_set_debug_level(const char *val, const struct kernel_param *kp) |
285 | { | 285 | { |
286 | int ret = param_set_int(val, kp); | 286 | int ret = param_set_int(val, kp); |
287 | struct MPT3SAS_ADAPTER *ioc; | 287 | struct MPT3SAS_ADAPTER *ioc; |
diff --git a/drivers/tty/serial/kgdboc.c b/drivers/tty/serial/kgdboc.c index a260cde743e2..5532c440bf61 100644 --- a/drivers/tty/serial/kgdboc.c +++ b/drivers/tty/serial/kgdboc.c | |||
@@ -245,7 +245,8 @@ static void kgdboc_put_char(u8 chr) | |||
245 | kgdb_tty_line, chr); | 245 | kgdb_tty_line, chr); |
246 | } | 246 | } |
247 | 247 | ||
248 | static int param_set_kgdboc_var(const char *kmessage, struct kernel_param *kp) | 248 | static int param_set_kgdboc_var(const char *kmessage, |
249 | const struct kernel_param *kp) | ||
249 | { | 250 | { |
250 | int len = strlen(kmessage); | 251 | int len = strlen(kmessage); |
251 | 252 | ||
diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c index 65c88379a3a1..7d67fc150edc 100644 --- a/fs/fuse/inode.c +++ b/fs/fuse/inode.c | |||
@@ -31,7 +31,7 @@ static struct kmem_cache *fuse_inode_cachep; | |||
31 | struct list_head fuse_conn_list; | 31 | struct list_head fuse_conn_list; |
32 | DEFINE_MUTEX(fuse_mutex); | 32 | DEFINE_MUTEX(fuse_mutex); |
33 | 33 | ||
34 | static int set_global_limit(const char *val, struct kernel_param *kp); | 34 | static int set_global_limit(const char *val, const struct kernel_param *kp); |
35 | 35 | ||
36 | unsigned max_user_bgreq; | 36 | unsigned max_user_bgreq; |
37 | module_param_call(max_user_bgreq, set_global_limit, param_get_uint, | 37 | module_param_call(max_user_bgreq, set_global_limit, param_get_uint, |
@@ -823,7 +823,7 @@ static void sanitize_global_limit(unsigned *limit) | |||
823 | *limit = (1 << 16) - 1; | 823 | *limit = (1 << 16) - 1; |
824 | } | 824 | } |
825 | 825 | ||
826 | static int set_global_limit(const char *val, struct kernel_param *kp) | 826 | static int set_global_limit(const char *val, const struct kernel_param *kp) |
827 | { | 827 | { |
828 | int rv; | 828 | int rv; |
829 | 829 | ||
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c index b995bdc13976..b837fb7e290a 100644 --- a/fs/lockd/svc.c +++ b/fs/lockd/svc.c | |||
@@ -602,7 +602,7 @@ static struct ctl_table nlm_sysctl_root[] = { | |||
602 | */ | 602 | */ |
603 | 603 | ||
604 | #define param_set_min_max(name, type, which_strtol, min, max) \ | 604 | #define param_set_min_max(name, type, which_strtol, min, max) \ |
605 | static int param_set_##name(const char *val, struct kernel_param *kp) \ | 605 | static int param_set_##name(const char *val, const struct kernel_param *kp) \ |
606 | { \ | 606 | { \ |
607 | char *endp; \ | 607 | char *endp; \ |
608 | __typeof__(type) num = which_strtol(val, &endp, 0); \ | 608 | __typeof__(type) num = which_strtol(val, &endp, 0); \ |
diff --git a/fs/ocfs2/dlmfs/dlmfs.c b/fs/ocfs2/dlmfs/dlmfs.c index 9ab9e1892b5f..988137de08f5 100644 --- a/fs/ocfs2/dlmfs/dlmfs.c +++ b/fs/ocfs2/dlmfs/dlmfs.c | |||
@@ -88,13 +88,13 @@ struct workqueue_struct *user_dlm_worker; | |||
88 | */ | 88 | */ |
89 | #define DLMFS_CAPABILITIES "bast stackglue" | 89 | #define DLMFS_CAPABILITIES "bast stackglue" |
90 | static int param_set_dlmfs_capabilities(const char *val, | 90 | static int param_set_dlmfs_capabilities(const char *val, |
91 | struct kernel_param *kp) | 91 | const struct kernel_param *kp) |
92 | { | 92 | { |
93 | printk(KERN_ERR "%s: readonly parameter\n", kp->name); | 93 | printk(KERN_ERR "%s: readonly parameter\n", kp->name); |
94 | return -EINVAL; | 94 | return -EINVAL; |
95 | } | 95 | } |
96 | static int param_get_dlmfs_capabilities(char *buffer, | 96 | static int param_get_dlmfs_capabilities(char *buffer, |
97 | struct kernel_param *kp) | 97 | const struct kernel_param *kp) |
98 | { | 98 | { |
99 | return strlcpy(buffer, DLMFS_CAPABILITIES, | 99 | return strlcpy(buffer, DLMFS_CAPABILITIES, |
100 | strlen(DLMFS_CAPABILITIES) + 1); | 100 | strlen(DLMFS_CAPABILITIES) + 1); |
diff --git a/include/net/netfilter/nf_conntrack.h b/include/net/netfilter/nf_conntrack.h index 8f3bd30511de..fd5241ce1fc9 100644 --- a/include/net/netfilter/nf_conntrack.h +++ b/include/net/netfilter/nf_conntrack.h | |||
@@ -284,7 +284,7 @@ static inline bool nf_ct_should_gc(const struct nf_conn *ct) | |||
284 | 284 | ||
285 | struct kernel_param; | 285 | struct kernel_param; |
286 | 286 | ||
287 | int nf_conntrack_set_hashsize(const char *val, struct kernel_param *kp); | 287 | int nf_conntrack_set_hashsize(const char *val, const struct kernel_param *kp); |
288 | int nf_conntrack_hash_resize(unsigned int hashsize); | 288 | int nf_conntrack_hash_resize(unsigned int hashsize); |
289 | 289 | ||
290 | extern struct hlist_nulls_head *nf_conntrack_hash; | 290 | extern struct hlist_nulls_head *nf_conntrack_hash; |
diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c index 01130392b7c0..5e50c54e1318 100644 --- a/net/netfilter/nf_conntrack_core.c +++ b/net/netfilter/nf_conntrack_core.c | |||
@@ -1940,7 +1940,7 @@ int nf_conntrack_hash_resize(unsigned int hashsize) | |||
1940 | return 0; | 1940 | return 0; |
1941 | } | 1941 | } |
1942 | 1942 | ||
1943 | int nf_conntrack_set_hashsize(const char *val, struct kernel_param *kp) | 1943 | int nf_conntrack_set_hashsize(const char *val, const struct kernel_param *kp) |
1944 | { | 1944 | { |
1945 | unsigned int hashsize; | 1945 | unsigned int hashsize; |
1946 | int rc; | 1946 | int rc; |
diff --git a/net/netfilter/nf_nat_ftp.c b/net/netfilter/nf_nat_ftp.c index e84a578dbe35..d76afafdc699 100644 --- a/net/netfilter/nf_nat_ftp.c +++ b/net/netfilter/nf_nat_ftp.c | |||
@@ -134,7 +134,7 @@ static int __init nf_nat_ftp_init(void) | |||
134 | } | 134 | } |
135 | 135 | ||
136 | /* Prior to 2.6.11, we had a ports param. No longer, but don't break users. */ | 136 | /* Prior to 2.6.11, we had a ports param. No longer, but don't break users. */ |
137 | static int warn_set(const char *val, struct kernel_param *kp) | 137 | static int warn_set(const char *val, const struct kernel_param *kp) |
138 | { | 138 | { |
139 | printk(KERN_INFO KBUILD_MODNAME | 139 | printk(KERN_INFO KBUILD_MODNAME |
140 | ": kernel >= 2.6.10 only uses 'ports' for conntrack modules\n"); | 140 | ": kernel >= 2.6.10 only uses 'ports' for conntrack modules\n"); |
diff --git a/net/netfilter/nf_nat_irc.c b/net/netfilter/nf_nat_irc.c index 0648cb096bd8..dcb5f6375d9d 100644 --- a/net/netfilter/nf_nat_irc.c +++ b/net/netfilter/nf_nat_irc.c | |||
@@ -106,7 +106,7 @@ static int __init nf_nat_irc_init(void) | |||
106 | } | 106 | } |
107 | 107 | ||
108 | /* Prior to 2.6.11, we had a ports param. No longer, but don't break users. */ | 108 | /* Prior to 2.6.11, we had a ports param. No longer, but don't break users. */ |
109 | static int warn_set(const char *val, struct kernel_param *kp) | 109 | static int warn_set(const char *val, const struct kernel_param *kp) |
110 | { | 110 | { |
111 | printk(KERN_INFO KBUILD_MODNAME | 111 | printk(KERN_INFO KBUILD_MODNAME |
112 | ": kernel >= 2.6.10 only uses 'ports' for conntrack modules\n"); | 112 | ": kernel >= 2.6.10 only uses 'ports' for conntrack modules\n"); |
diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c index aa04666f929d..e5e4e18699c8 100644 --- a/net/sunrpc/svc.c +++ b/net/sunrpc/svc.c | |||
@@ -50,7 +50,7 @@ EXPORT_SYMBOL_GPL(svc_pool_map); | |||
50 | static DEFINE_MUTEX(svc_pool_map_mutex);/* protects svc_pool_map.count only */ | 50 | static DEFINE_MUTEX(svc_pool_map_mutex);/* protects svc_pool_map.count only */ |
51 | 51 | ||
52 | static int | 52 | static int |
53 | param_set_pool_mode(const char *val, struct kernel_param *kp) | 53 | param_set_pool_mode(const char *val, const struct kernel_param *kp) |
54 | { | 54 | { |
55 | int *ip = (int *)kp->arg; | 55 | int *ip = (int *)kp->arg; |
56 | struct svc_pool_map *m = &svc_pool_map; | 56 | struct svc_pool_map *m = &svc_pool_map; |
@@ -80,7 +80,7 @@ out: | |||
80 | } | 80 | } |
81 | 81 | ||
82 | static int | 82 | static int |
83 | param_get_pool_mode(char *buf, struct kernel_param *kp) | 83 | param_get_pool_mode(char *buf, const struct kernel_param *kp) |
84 | { | 84 | { |
85 | int *ip = (int *)kp->arg; | 85 | int *ip = (int *)kp->arg; |
86 | 86 | ||
diff --git a/security/apparmor/lsm.c b/security/apparmor/lsm.c index 72b915dfcaf7..f46a12b339bc 100644 --- a/security/apparmor/lsm.c +++ b/security/apparmor/lsm.c | |||
@@ -1200,11 +1200,11 @@ static const struct kernel_param_ops param_ops_aalockpolicy = { | |||
1200 | .get = param_get_aalockpolicy | 1200 | .get = param_get_aalockpolicy |
1201 | }; | 1201 | }; |
1202 | 1202 | ||
1203 | static int param_set_audit(const char *val, struct kernel_param *kp); | 1203 | static int param_set_audit(const char *val, const struct kernel_param *kp); |
1204 | static int param_get_audit(char *buffer, struct kernel_param *kp); | 1204 | static int param_get_audit(char *buffer, const struct kernel_param *kp); |
1205 | 1205 | ||
1206 | static int param_set_mode(const char *val, struct kernel_param *kp); | 1206 | static int param_set_mode(const char *val, const struct kernel_param *kp); |
1207 | static int param_get_mode(char *buffer, struct kernel_param *kp); | 1207 | static int param_get_mode(char *buffer, const struct kernel_param *kp); |
1208 | 1208 | ||
1209 | /* Flag values, also controllable via /sys/module/apparmor/parameters | 1209 | /* Flag values, also controllable via /sys/module/apparmor/parameters |
1210 | * We define special types as we want to do additional mediation. | 1210 | * We define special types as we want to do additional mediation. |
@@ -1338,7 +1338,7 @@ static int param_get_aauint(char *buffer, const struct kernel_param *kp) | |||
1338 | return param_get_uint(buffer, kp); | 1338 | return param_get_uint(buffer, kp); |
1339 | } | 1339 | } |
1340 | 1340 | ||
1341 | static int param_get_audit(char *buffer, struct kernel_param *kp) | 1341 | static int param_get_audit(char *buffer, const struct kernel_param *kp) |
1342 | { | 1342 | { |
1343 | if (!apparmor_enabled) | 1343 | if (!apparmor_enabled) |
1344 | return -EINVAL; | 1344 | return -EINVAL; |
@@ -1347,7 +1347,7 @@ static int param_get_audit(char *buffer, struct kernel_param *kp) | |||
1347 | return sprintf(buffer, "%s", audit_mode_names[aa_g_audit]); | 1347 | return sprintf(buffer, "%s", audit_mode_names[aa_g_audit]); |
1348 | } | 1348 | } |
1349 | 1349 | ||
1350 | static int param_set_audit(const char *val, struct kernel_param *kp) | 1350 | static int param_set_audit(const char *val, const struct kernel_param *kp) |
1351 | { | 1351 | { |
1352 | int i; | 1352 | int i; |
1353 | 1353 | ||
@@ -1368,7 +1368,7 @@ static int param_set_audit(const char *val, struct kernel_param *kp) | |||
1368 | return -EINVAL; | 1368 | return -EINVAL; |
1369 | } | 1369 | } |
1370 | 1370 | ||
1371 | static int param_get_mode(char *buffer, struct kernel_param *kp) | 1371 | static int param_get_mode(char *buffer, const struct kernel_param *kp) |
1372 | { | 1372 | { |
1373 | if (!apparmor_enabled) | 1373 | if (!apparmor_enabled) |
1374 | return -EINVAL; | 1374 | return -EINVAL; |
@@ -1378,7 +1378,7 @@ static int param_get_mode(char *buffer, struct kernel_param *kp) | |||
1378 | return sprintf(buffer, "%s", aa_profile_mode_names[aa_g_profile_mode]); | 1378 | return sprintf(buffer, "%s", aa_profile_mode_names[aa_g_profile_mode]); |
1379 | } | 1379 | } |
1380 | 1380 | ||
1381 | static int param_set_mode(const char *val, struct kernel_param *kp) | 1381 | static int param_set_mode(const char *val, const struct kernel_param *kp) |
1382 | { | 1382 | { |
1383 | int i; | 1383 | int i; |
1384 | 1384 | ||