Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933182AbbDVOH5 (ORCPT ); Wed, 22 Apr 2015 10:07:57 -0400 Received: from mail-oi0-f51.google.com ([209.85.218.51]:33224 "EHLO mail-oi0-f51.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932367AbbDVOH4 (ORCPT ); Wed, 22 Apr 2015 10:07:56 -0400 MIME-Version: 1.0 In-Reply-To: <1429632194-13445-1-git-send-email-dvlasenk@redhat.com> References: <1429632194-13445-1-git-send-email-dvlasenk@redhat.com> Date: Wed, 22 Apr 2015 10:07:55 -0400 Message-ID: Subject: Re: [PATCH v2] x86/asm/entry/64: 32-bit execve stubs are identical to x32 ones, merge them. From: Brian Gerst To: Denys Vlasenko Cc: Ingo Molnar , Linus Torvalds , Steven Rostedt , Borislav Petkov , "H. Peter Anvin" , Andy Lutomirski , Oleg Nesterov , Frederic Weisbecker , Alexei Starovoitov , Will Drewry , Kees Cook , "the arch/x86 maintainers" , Linux Kernel Mailing List Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2635 Lines: 90 On Tue, Apr 21, 2015 at 12:03 PM, Denys Vlasenko wrote: > Siggested by Brian Gerst. Suggested > > Run-tested. > > Signed-off-by: Denys Vlasenko > CC: Linus Torvalds > CC: Steven Rostedt > CC: Ingo Molnar > CC: Borislav Petkov > CC: "H. Peter Anvin" > CC: Andy Lutomirski > CC: Oleg Nesterov > CC: Frederic Weisbecker > CC: Alexei Starovoitov > CC: Will Drewry > CC: Kees Cook > CC: x86@kernel.org > CC: linux-kernel@vger.kernel.org > --- > > Changes in v2: fixed "suggested by", I remebered it wrongly. > > arch/x86/kernel/entry_64.S | 23 +++++------------------ > 1 file changed, 5 insertions(+), 18 deletions(-) > > diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S > index c7b2384..3bdfdcd 100644 > --- a/arch/x86/kernel/entry_64.S > +++ b/arch/x86/kernel/entry_64.S > @@ -524,40 +524,27 @@ GLOBAL(stub_execveat) > CFI_ENDPROC > END(stub_execveat) > > -#ifdef CONFIG_X86_X32_ABI > +#if defined(CONFIG_X86_X32_ABI) || defined(CONFIG_IA32_EMULATION) > .align 8 > GLOBAL(stub_x32_execve) > +GLOBAL(stub32_execve) > CFI_STARTPROC > DEFAULT_FRAME 0, 8 > call compat_sys_execve > jmp return_from_execve > CFI_ENDPROC > +END(stub32_execve) > END(stub_x32_execve) > .align 8 > GLOBAL(stub_x32_execveat) > - CFI_STARTPROC > - DEFAULT_FRAME 0, 8 > - call compat_sys_execveat > - jmp return_from_execve > - CFI_ENDPROC > -END(stub_x32_execveat) > -#endif > - > -#ifdef CONFIG_IA32_EMULATION > - .align 8 > -GLOBAL(stub32_execve) > - CFI_STARTPROC > - call compat_sys_execve > - jmp return_from_execve > - CFI_ENDPROC > -END(stub32_execve) > - .align 8 > GLOBAL(stub32_execveat) > CFI_STARTPROC > + DEFAULT_FRAME 0, 8 > call compat_sys_execveat > jmp return_from_execve > CFI_ENDPROC > END(stub32_execveat) > +END(stub_x32_execveat) > #endif > > /* I don't think it's necessary to keep both labels. Just use one and change the syscall tables accordingly. Otherwise, looks good. -- Brian Gerst -- 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/