linux-stable/arch/alpha/kernel
David Howells d7627467b7 Make do_execve() take a const filename pointer
Make do_execve() take a const filename pointer so that kernel_execve() compiles
correctly on ARM:

arch/arm/kernel/sys_arm.c:88: warning: passing argument 1 of 'do_execve' discards qualifiers from pointer target type

This also requires the argv and envp arguments to be consted twice, once for
the pointer array and once for the strings the array points to.  This is
because do_execve() passes a pointer to the filename (now const) to
copy_strings_kernel().  A simpler alternative would be to cast the filename
pointer in do_execve() when it's passed to copy_strings_kernel().

do_execve() may not change any of the strings it is passed as part of the argv
or envp lists as they are some of them in .rodata, so marking these strings as
const should be fine.

Further kernel_execve() and sys_execve() need to be changed to match.

This has been test built on x86_64, frv, arm and mips.

Signed-off-by: David Howells <dhowells@redhat.com>
Tested-by: Ralf Baechle <ralf@linux-mips.org>
Acked-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-08-17 18:07:43 -07:00
..
.gitignore alpha: .gitignore vmlinux.lds 2009-01-15 16:39:40 -08:00
alpha_ksyms.c Generic semaphore implementation 2008-04-17 10:42:34 -04:00
asm-offsets.c CRED: Separate task security context from task_struct 2008-11-14 10:39:16 +11:00
binfmt_loader.c alpha: binfmt_aout fix 2009-05-02 15:36:10 -07:00
console.c ALPHA: support graphics on non-zero PCI domains 2007-06-01 08:18:29 -07:00
core_apecs.c
core_cia.c
core_irongate.c Introduce flags for reserve_bootmem() 2008-02-07 08:42:25 -08:00
core_lca.c
core_marvel.c arch/alpha/kernel: Add kmalloc NULL tests 2009-11-30 15:38:19 -05:00
core_mcpcia.c alpha: fixes for specific machine types 2007-04-17 16:36:27 -07:00
core_polaris.c
core_t2.c alpha: Fix fallout from locking changes 2009-12-14 23:55:32 +01:00
core_titan.c arch/alpha/kernel: Add kmalloc NULL tests 2009-11-30 15:38:19 -05:00
core_tsunami.c alpha: remove remaining __FUNCTION__ occurrences 2008-04-28 08:58:27 -07:00
core_wildfire.c
entry.S do_pipe cleanup: drop its last user in arch/alpha/ 2009-03-27 14:43:58 -04:00
err_common.c PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
err_ev6.c alpha: titan and marvel build fixes 2009-05-02 15:36:10 -07:00
err_ev7.c alpha: titan and marvel build fixes 2009-05-02 15:36:10 -07:00
err_impl.h alpha: titan and marvel build fixes 2009-05-02 15:36:10 -07:00
err_marvel.c alpha: titan and marvel build fixes 2009-05-02 15:36:10 -07:00
err_titan.c alpha: titan and marvel build fixes 2009-05-02 15:36:10 -07:00
es1888.c
gct.c
head.S alpha: convert to use __HEAD and HEAD_TEXT macros. 2009-04-26 09:20:38 -07:00
init_task.c alpha: use .data.init_task instead of .data.init_thread. 2009-09-24 17:16:22 -07:00
io.c
irq.c alpha: add performance monitor interrupt counter 2010-08-09 20:45:03 -07:00
irq_alpha.c alpha: implement HW performance events on the EV67 and later CPUs 2010-08-09 20:45:04 -07:00
irq_i8259.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
irq_impl.h alpha: remove obsolete hw_interrupt_type 2009-06-16 19:47:46 -07:00
irq_pyxis.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
irq_srm.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
machvec_impl.h alpha: fix RTC on marvel 2009-01-15 16:39:40 -08:00
Makefile alpha: implement HW performance events on the EV67 and later CPUs 2010-08-09 20:45:04 -07:00
module.c alpha: handle kcalloc failure 2008-04-28 08:58:27 -07:00
osf_sys.c Mark arguments to certain syscalls as being const 2010-08-13 16:53:13 -07:00
pc873xx.c alpha: Detect Super IO chip, no IDE on Avanti, enable EPP19 2010-06-15 14:19:08 -04:00
pc873xx.h alpha: Detect Super IO chip, no IDE on Avanti, enable EPP19 2010-06-15 14:19:08 -04:00
pci-noop.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
pci-sysfs.c alpha: fix pci_mmap_resource API breakage 2010-06-15 14:19:07 -04:00
pci.c resource/PCI: mark struct resource as const 2010-02-22 16:16:57 -08:00
pci_impl.h alpha: AGP update (fixes compile failure) 2009-09-24 07:21:06 -07:00
pci_iommu.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
perf_event.c alpha: implement HW performance events on the EV67 and later CPUs 2010-08-09 20:45:04 -07:00
process.c Make do_execve() take a const filename pointer 2010-08-17 18:07:43 -07:00
proto.h alpha: titan and marvel build fixes 2009-05-02 15:36:10 -07:00
ptrace.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
setup.c alpha: bad macro expansion, parameter is member 2009-06-16 19:47:46 -07:00
signal.c KEYS: Add missing linux/tracehook.h #inclusions 2009-09-09 18:30:02 +10:00
smc37c93x.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
smc37c669.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
smp.c cpumask: arch_send_call_function_ipi_mask: alpha 2009-09-24 09:34:43 +09:30
srm_env.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
srmcons.c alpha: fix trivial section mismatch warnings 2007-07-16 09:05:37 -07:00
sys_alcor.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_cabriolet.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_dp264.c alpha: remove trailing spaces in messages 2010-03-18 22:34:08 -04:00
sys_eb64p.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_eiger.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_jensen.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_marvel.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_miata.c PCI: alpha: use generic pci_swizzle_interrupt_pin() 2009-01-07 11:12:53 -08:00
sys_mikasa.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_nautilus.c alpha: nautilus - fix hang on boot 2009-01-15 16:39:40 -08:00
sys_noritake.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_rawhide.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_ruffian.c arch/alpha/kernel/sys_ruffian.c: Use DIV_ROUND_CLOSEST 2009-11-30 15:37:25 -05:00
sys_rx164.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_sable.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_sio.c alpha: Detect Super IO chip, no IDE on Avanti, enable EPP19 2010-06-15 14:19:08 -04:00
sys_sx164.c alpha: more fixes for specific machine types 2007-04-17 16:36:27 -07:00
sys_takara.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
sys_titan.c alpha: remove trailing spaces in messages 2010-03-18 22:34:08 -04:00
sys_wildfire.c alpha: Fixup last users of irq_chip->typename 2009-11-30 22:51:31 -05:00
systbls.S alpha: Add minimal support for software performance events 2009-12-18 01:11:30 -05:00
time.c alpha: implement HW performance events on the EV67 and later CPUs 2010-08-09 20:45:04 -07:00
traps.c alpha: use __ratelimit 2010-03-18 22:34:08 -04:00
vmlinux.lds.S alpha: Fix duplicate <asm/thread_info.h> include 2009-09-27 14:46:05 -07:00