linux_dsm_epyc7002/arch/powerpc/platforms/pseries
Kees Cook e4dca7b7aa 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>
2017-10-31 15:30:37 +01:00
..
cmm.c treewide: Fix function prototypes for module_param_call() 2017-10-31 15:30:37 +01:00
dlpar.c powerpc/pseries: Fix "OF: ERROR: Bad of_node_put() on /cpus" during DLPAR 2017-09-21 19:30:53 +10:00
dtl.c powerpc: Create asm/debugfs.h and move powerpc_debugfs_root there 2017-04-11 07:46:03 +10:00
eeh_pseries.c powerpc/eeh: Remove unnecessary config_addr from eeh_dev 2017-08-31 14:26:09 +10:00
event_sources.c powerpc: Convert to using %pOF instead of full_name 2017-08-23 22:27:04 +10:00
firmware.c Merge branch 'topic/ppc-kvm' into next 2017-02-14 17:18:29 +11:00
hotplug-cpu.c powerpc/pseries: Fix "OF: ERROR: Bad of_node_put() on /cpus" during DLPAR 2017-09-21 19:30:53 +10:00
hotplug-memory.c powerpc/pseries: Don't attempt to acquire drc during memory hot add for assigned lmbs 2017-08-31 20:02:23 +10:00
hvCall_inst.c powerpc/pseries: Move struct hcall_stats to hvCall_inst.c 2017-03-20 19:02:49 +11:00
hvCall.S powerpc/asm: Convert .llong directives to .8byte 2017-08-31 14:26:47 +10:00
hvconsole.c powerpc: Fix misspellings in comments. 2016-03-01 19:27:20 +11:00
hvcserver.c powerpc/pseries/hvcserver: don't memset pi_buff if it is null 2015-10-09 08:03:03 +11:00
ibmebus.c powerpc: Convert to using %pOF instead of full_name 2017-08-23 22:27:04 +10:00
io_event_irq.c powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
iommu.c powerpc: Convert to using %pOF instead of full_name 2017-08-23 22:27:04 +10:00
Kconfig powerpc/xive: guest exploitation of the XIVE interrupt controller 2017-09-02 21:02:35 +10:00
kexec.c powerpc/xive: guest exploitation of the XIVE interrupt controller 2017-09-02 21:02:35 +10:00
lpar.c powerpc/pseries: Fix passing of pp0 in updatepp() and updateboltedpp() 2017-07-03 23:12:19 +10:00
lparcfg.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
Makefile powerpc: Change places using CONFIG_KEXEC to use CONFIG_KEXEC_CORE instead. 2016-11-30 23:15:11 +11:00
mobility.c powerpc/pseries: Fix parent_dn reference leak in add_dt_node() 2017-09-21 19:33:16 +10:00
msi.c powerpc/pci: Remove OF node back pointer from pci_dn 2017-08-31 14:26:12 +10:00
nvram.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
of_helpers.c powerpc/pseries: Correct string length in pseries_of_derive_parent() 2015-10-28 12:08:18 +09:00
of_helpers.h powerpc/pseries: extract of_helpers module 2015-10-05 21:11:24 +11:00
offline_states.h powerpc/smp: soft-replugged CPUs must go back to start_secondary 2011-04-01 15:37:09 +11:00
pci_dlpar.c powerpc: Convert to using %pOF instead of full_name 2017-08-23 22:27:04 +10:00
pci.c powerpc/pseries: use pci_host_bridge.release_fn() to kfree(phb) 2016-08-22 11:09:33 +10:00
power.c powerpc/sparse: Include headers containing prototypes 2016-06-16 22:40:19 +10:00
pseries_energy.c powerpc/pseries: Don't print failure message in energy driver 2017-08-10 22:30:29 +10:00
pseries.h powerpc: pseries: remove dlpar_attach_node dependency on full path 2017-08-23 22:27:04 +10:00
ras.c powerpc/pseries/le: Work around a firmware quirk 2017-08-31 14:26:02 +10:00
reconfig.c Merge branch 'fixes' into next 2017-08-23 22:20:10 +10:00
rng.c powerpc: Use hardware RNG for arch_get_random_seed_* not arch_get_random_* 2015-07-23 19:52:03 +10:00
scanlog.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
setup.c powerpc/xive: guest exploitation of the XIVE interrupt controller 2017-09-02 21:02:35 +10:00
smp.c powerpc/xive: guest exploitation of the XIVE interrupt controller 2017-09-02 21:02:35 +10:00
suspend.c mm: treewide: remove GFP_TEMPORARY allocation flag 2017-09-13 18:53:16 -07:00
vio.c powerpc: Convert to using %pOF instead of full_name 2017-08-23 22:27:04 +10:00