Ingo,
if you're merging this, please do the independent parts really
independenrly. For example, the above is a patch in its own right, and
probably worth doing regardless of anything else.
(Same goes for the ACPI parts, I'll bounce that part to Len,
Linus
On Wed, 13 Feb 2008, pageexec@freemail.hu wrote:
quoted text >
> diff -u linux-2.6.24.2-pax/arch/x86/kernel/entry_64.S linux-2.6.24.2-pax/arch/x86/kernel/entry_64.S
> --- linux-2.6.24.2-pax/arch/x86/kernel/entry_64.S 2008-01-25 15:34:25.000000000 +0100
> +++ linux-2.6.24.2-pax/arch/x86/kernel/entry_64.S 2008-02-13 11:12:26.000000000 +0100
> @@ -440,6 +440,7 @@
> CFI_REGISTER rip, r11
> SAVE_REST
> FIXUP_TOP_OF_STACK %r11
> + movq %rsp, %rcx
> call sys_execve
> RESTORE_TOP_OF_STACK %r11
> movq %rax,RAX(%rsp)
> @@ -1004,15 +1005,16 @@
> * rdi: name, rsi: argv, rdx: envp
> *
> * We want to fallback into:
> - * extern long sys_execve(char *name, char **argv,char **envp, struct pt_regs regs)
> + * extern long sys_execve(char *name, char **argv,char **envp, struct pt_regs *regs)
> *
> * do_sys_execve asm fallback arguments:
> - * rdi: name, rsi: argv, rdx: envp, fake frame on the stack
> + * rdi: name, rsi: argv, rdx: envp, rcx: fake frame on the stack
> */
> ENTRY(kernel_execve)
> CFI_STARTPROC
> FAKE_STACK_FRAME __PLACEHOLDER__0_
> SAVE_ALL
> + movq %rsp,%rcx
> call sys_execve
> movq %rax, RAX(%rsp)
> RESTORE_REST
> diff -u linux-2.6.24.2-pax/arch/x86/kernel/process_64.c linux-2.6.24.2-pax/arch/x86/kernel/process_64.c
> --- linux-2.6.24.2-pax/arch/x86/kernel/process_64.c 2008-01-25 15:34:25.000000000 +0100
> +++ linux-2.6.24.2-pax/arch/x86/kernel/process_64.c 2008-02-13 11:13:14.000000000 +0100
> @@ -702,7 +701,7 @@
> */
> asmlinkage
> long sys_execve(char __user *name, char __user * __user *argv,
> - char __user * __user *envp, struct pt_regs regs)
> + char __user * __user *envp, struct pt_regs *regs)
> {
> long error;
> char * filename;
> @@ -711,7 +710,7 @@
> error = PTR_ERR(filename);
> if (IS_ERR(filename))
> return error;
> - error = do_execve(filename, argv, envp, ®s);
> + error = do_execve(filename, argv, envp, regs);
> if (error == 0) {
> task_lock(current);
> current->ptrace &= ~PT_DTRACE;
--
unsubscribe notice To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Messages in current thread:
Re: vmsplice exploits, stack protector and Makefiles , Linus Torvalds , (Wed Feb 13, 11:53 am)