lkml.org 
[lkml]   [2020]   [Oct]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip: x86/cleanups] x86/elf: Use e_machine to choose DLINFO in compat
    The following commit has been merged into the x86/cleanups branch of tip:

    Commit-ID: 2656af0d5abfa26d7f1e40f92e9953fe155b950a
    Gitweb: https://git.kernel.org/tip/2656af0d5abfa26d7f1e40f92e9953fe155b950a
    Author: Gabriel Krisman Bertazi <krisman@collabora.com>
    AuthorDate: Sat, 03 Oct 2020 23:25:30 -04:00
    Committer: Thomas Gleixner <tglx@linutronix.de>
    CommitterDate: Mon, 26 Oct 2020 13:46:46 +01:00

    x86/elf: Use e_machine to choose DLINFO in compat

    Since TIF_X32 is going away, avoid using it to find the ELF type on
    ARCH_DLINFO.

    According to SysV AMD64 ABI Draft, an AMD64 ELF object using ILP32 must
    have ELFCLASS32 with (E_MACHINE == EM_X86_64), so use that ELF field to
    differentiate a x32 object from a IA32 object when loading ARCH_DLINFO in
    compat mode.

    Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.com>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Reviewed-by: Andy Lutomirski <luto@kernel.org>
    Link: https://lore.kernel.org/r/20201004032536.1229030-5-krisman@collabora.com

    ---
    arch/x86/include/asm/elf.h | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/arch/x86/include/asm/elf.h b/arch/x86/include/asm/elf.h
    index b9a5d48..9220efc 100644
    --- a/arch/x86/include/asm/elf.h
    +++ b/arch/x86/include/asm/elf.h
    @@ -361,7 +361,7 @@ do { \
    #define AT_SYSINFO 32

    #define COMPAT_ARCH_DLINFO \
    -if (test_thread_flag(TIF_X32)) \
    +if (exec->e_machine == EM_X86_64) \
    ARCH_DLINFO_X32; \
    else \
    ARCH_DLINFO_IA32
    \
     
     \ /
      Last update: 2020-10-26 13:53    [W:3.910 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site