The patch titled provide kernel_execve on all architectures (fix) has been removed from the -mm tree. Its filename is provide-kernel_execve-on-all-architectures-fix.patch This patch was dropped because it was folded into provide-kernel_execve-on-all-architectures.patch ------------------------------------------------------ Subject: provide kernel_execve on all architectures (fix) From: Martin Schwidefsky <schwidefsky@xxxxxxxxxx> On Wed, 2006-08-30 at 14:43 +0200, Arnd Bergmann wrote: > This adds the new kernel_execve function on all architectures > that were using _syscall3() to implement execve. Doesn't compile for s390. Patch attached, issues fixed: 1) Include unistd.h for __NR_execve 2) The compiler warns about __arg2 and __arg3 assignments (watch out for the *const* - isn't C a lovely language ;-) 3) The inline assembly does not clobber register "1", nor the condition code. The call to kernel_execve does clobber both so it is not really a problem, but nit-picking is fun >:-) Cc: Arnd Bergmann <arnd@xxxxxxxx> Cc: Andi Kleen <ak@xxxxxx> Cc: Paul Mackerras <paulus@xxxxxxxxx> Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> Cc: Richard Henderson <rth@xxxxxxxxxxx> Cc: Ivan Kokshaysky <ink@xxxxxxxxxxxxxxxxxxxx> Cc: Russell King <rmk@xxxxxxxxxxxxxxxx> Cc: Ian Molton <spyro@xxxxxxx> Cc: Mikael Starvik <starvik@xxxxxxxx> Cc: David Howells <dhowells@xxxxxxxxxx> Cc: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx> Cc: Hirokazu Takata <takata.hirokazu@xxxxxxxxxxx> Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx> Cc: Kyle McMartin <kyle@xxxxxxxxxxx> Cc: Heiko Carstens <heiko.carstens@xxxxxxxxxx> Cc: Martin Schwidefsky <schwidefsky@xxxxxxxxxx> Cc: Paul Mundt <lethal@xxxxxxxxxxxx> Cc: Kazumoto Kojima <kkojima@xxxxxxxxxxxxxx> Cc: Richard Curnow <rc@xxxxxxxxxx> Cc: William Lee Irwin III <wli@xxxxxxxxxxxxxx> Cc: "David S. Miller" <davem@xxxxxxxxxxxxx> Cc: Jeff Dike <jdike@xxxxxxxxxxx> Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@xxxxxxxx> Cc: Miles Bader <uclinux-v850@xxxxxxxxxxxxx> Cc: Chris Zankel <chris@xxxxxxxxxx> Cc: "Luck, Tony" <tony.luck@xxxxxxxxx> Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> Cc: Roman Zippel <zippel@xxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- arch/s390/kernel/sys_s390.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) diff -puN arch/s390/kernel/sys_s390.c~provide-kernel_execve-on-all-architectures-fix arch/s390/kernel/sys_s390.c --- a/arch/s390/kernel/sys_s390.c~provide-kernel_execve-on-all-architectures-fix +++ a/arch/s390/kernel/sys_s390.c @@ -27,6 +27,7 @@ #include <linux/file.h> #include <linux/utsname.h> #include <linux/personality.h> +#include <linux/unistd.h> #include <asm/uaccess.h> #include <asm/ipc.h> @@ -273,14 +274,15 @@ s390_fadvise64_64(struct fadvise64_64_ar int kernel_execve(const char *filename, char *const argv[], char *const envp[]) { register const char *__arg1 asm("2") = filename; - register void *__arg2 asm("3") = argv; - register void *__arg3 asm("4") = envp; + register char *const*__arg2 asm("3") = argv; + register char *const*__arg3 asm("4") = envp; register long __svcres asm("2"); - asm volatile ("svc %b1" + asm volatile( + "svc %b1" : "=d" (__svcres) : "i" (__NR_execve), "0" (__arg1), "d" (__arg2), - "d" (__arg3) : "1", "cc", "memory"); + "d" (__arg3) : "memory"); return __svcres; } _ Patches currently in -mm which might be from schwidefsky@xxxxxxxxxx are origin.patch s390-update-fs3270-to-use-a-struct-pid.patch add-regs_return_value-helper.patch introduce-kernel_execve.patch rename-the-provided-execve-functions-to-kernel_execve.patch provide-kernel_execve-on-all-architectures.patch provide-kernel_execve-on-all-architectures-fix.patch remove-the-use-of-_syscallx-macros-in-uml.patch sh64-remove-the-use-of-kernel-syscalls.patch remove-remaining-errno-and-__kernel_syscalls__-references.patch replace-cad_pid-by-a-struct-pid.patch replace-cad_pid-by-a-struct-pid-fixes.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html