linux/arch/avr32/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 avr32: add .gitignore files 2008-09-19 18:21:29 +02:00
Makefile Generic semaphore implementation 2008-04-17 10:42:34 -04:00
asm-offsets.c avr32: Fix lockup after Java stack underflow in user mode 2008-09-01 13:04:04 +02:00
avr32_ksyms.c avr32: add generic_find_next_le_bit bit function 2008-09-19 18:21:30 +02:00
cpu.c sysdev: Pass the attribute to the low level sysdev show/store function 2008-07-21 21:55:02 -07:00
entry-avr32b.S KEYS: Extend TIF_NOTIFY_RESUME to (almost) all architectures [try #6] 2009-09-02 21:29:19 +10:00
head.S AVR32: Get rid of board_early_init 2006-11-06 10:43:23 +01:00
init_task.c Use new __init_task_data macro in arch init_task.c files. 2009-09-21 06:27:08 +02:00
irq.c Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-12-15 09:02:01 -08:00
kprobes.c [AVR32] Enable debugging only when needed 2008-01-25 08:31:39 +01:00
module.c module: cleanup FIXME comments about trimming exception table entries. 2009-06-12 21:47:05 +09:30
nmi_debug.c [AVR32] NMI debugging 2008-01-25 08:31:43 +01:00
ocd.c libfs: allow error return from simple attributes 2008-02-08 09:22:34 -08:00
process.c Make do_execve() take a const filename pointer 2010-08-17 18:07:43 -07:00
ptrace.c arch/avr32: fix build failure caused by wrong prototype 2010-04-27 16:26:03 -07:00
setup.c avr32: added mem kernel command line option support 2008-09-22 09:51:01 +02:00
signal.c KEYS: Add missing linux/tracehook.h #inclusions 2009-09-09 18:30:02 +10:00
stacktrace.c fix core/stacktrace changes on avr32, mips, sh 2008-07-18 14:42:35 +02:00
switch_to.S [PATCH] avr32 architecture 2006-09-26 08:48:54 -07:00
sys_avr32.c Make do_execve() take a const filename pointer 2010-08-17 18:07:43 -07:00
syscall-stubs.S Unify sys_mmap* 2009-12-11 06:44:29 -05:00
syscall_table.S net: Introduce recvmmsg socket syscall 2009-10-12 23:40:10 -07:00
time.c avr32: Fix typo in read_persistent_clock() 2010-04-27 15:26:24 +02:00
traps.c Remove multiple KERN_ prefixes from printk formats 2009-07-08 10:30:03 -07:00
vmlinux.lds.S avr32: clean up linker script using standard macros. 2009-10-06 17:39:22 +02:00