diff options
Diffstat (limited to 'arch/x86_64/ia32')
-rw-r--r-- | arch/x86_64/ia32/ia32_binfmt.c | 10 | ||||
-rw-r--r-- | arch/x86_64/ia32/ia32entry.S | 4 | ||||
-rw-r--r-- | arch/x86_64/ia32/syscall32.c | 1 |
3 files changed, 7 insertions, 8 deletions
diff --git a/arch/x86_64/ia32/ia32_binfmt.c b/arch/x86_64/ia32/ia32_binfmt.c index 071100ea1251..185399baaf6d 100644 --- a/arch/x86_64/ia32/ia32_binfmt.c +++ b/arch/x86_64/ia32/ia32_binfmt.c | |||
@@ -5,6 +5,11 @@ | |||
5 | * This tricks binfmt_elf.c into loading 32bit binaries using lots | 5 | * This tricks binfmt_elf.c into loading 32bit binaries using lots |
6 | * of ugly preprocessor tricks. Talk about very very poor man's inheritance. | 6 | * of ugly preprocessor tricks. Talk about very very poor man's inheritance. |
7 | */ | 7 | */ |
8 | #define __ASM_X86_64_ELF_H 1 | ||
9 | |||
10 | #undef ELF_CLASS | ||
11 | #define ELF_CLASS ELFCLASS32 | ||
12 | |||
8 | #include <linux/types.h> | 13 | #include <linux/types.h> |
9 | #include <linux/stddef.h> | 14 | #include <linux/stddef.h> |
10 | #include <linux/rwsem.h> | 15 | #include <linux/rwsem.h> |
@@ -50,9 +55,6 @@ struct elf_phdr; | |||
50 | #undef ELF_ARCH | 55 | #undef ELF_ARCH |
51 | #define ELF_ARCH EM_386 | 56 | #define ELF_ARCH EM_386 |
52 | 57 | ||
53 | #undef ELF_CLASS | ||
54 | #define ELF_CLASS ELFCLASS32 | ||
55 | |||
56 | #define ELF_DATA ELFDATA2LSB | 58 | #define ELF_DATA ELFDATA2LSB |
57 | 59 | ||
58 | #define USE_ELF_CORE_DUMP 1 | 60 | #define USE_ELF_CORE_DUMP 1 |
@@ -136,7 +138,7 @@ struct elf_prpsinfo | |||
136 | 138 | ||
137 | #define user user32 | 139 | #define user user32 |
138 | 140 | ||
139 | #define __ASM_X86_64_ELF_H 1 | 141 | #undef elf_read_implies_exec |
140 | #define elf_read_implies_exec(ex, executable_stack) (executable_stack != EXSTACK_DISABLE_X) | 142 | #define elf_read_implies_exec(ex, executable_stack) (executable_stack != EXSTACK_DISABLE_X) |
141 | //#include <asm/ia32.h> | 143 | //#include <asm/ia32.h> |
142 | #include <linux/elf.h> | 144 | #include <linux/elf.h> |
diff --git a/arch/x86_64/ia32/ia32entry.S b/arch/x86_64/ia32/ia32entry.S index 796df6992f62..c48087db6f75 100644 --- a/arch/x86_64/ia32/ia32entry.S +++ b/arch/x86_64/ia32/ia32entry.S | |||
@@ -481,11 +481,7 @@ ia32_sys_call_table: | |||
481 | .quad sys_symlink | 481 | .quad sys_symlink |
482 | .quad sys_lstat | 482 | .quad sys_lstat |
483 | .quad sys_readlink /* 85 */ | 483 | .quad sys_readlink /* 85 */ |
484 | #ifdef CONFIG_IA32_AOUT | ||
485 | .quad sys_uselib | 484 | .quad sys_uselib |
486 | #else | ||
487 | .quad quiet_ni_syscall | ||
488 | #endif | ||
489 | .quad sys_swapon | 485 | .quad sys_swapon |
490 | .quad sys_reboot | 486 | .quad sys_reboot |
491 | .quad compat_sys_old_readdir | 487 | .quad compat_sys_old_readdir |
diff --git a/arch/x86_64/ia32/syscall32.c b/arch/x86_64/ia32/syscall32.c index 568ff0df89e7..fc4419ff0355 100644 --- a/arch/x86_64/ia32/syscall32.c +++ b/arch/x86_64/ia32/syscall32.c | |||
@@ -13,6 +13,7 @@ | |||
13 | #include <asm/proto.h> | 13 | #include <asm/proto.h> |
14 | #include <asm/tlbflush.h> | 14 | #include <asm/tlbflush.h> |
15 | #include <asm/ia32_unistd.h> | 15 | #include <asm/ia32_unistd.h> |
16 | #include <asm/vsyscall32.h> | ||
16 | 17 | ||
17 | extern unsigned char syscall32_syscall[], syscall32_syscall_end[]; | 18 | extern unsigned char syscall32_syscall[], syscall32_syscall_end[]; |
18 | extern unsigned char syscall32_sysenter[], syscall32_sysenter_end[]; | 19 | extern unsigned char syscall32_sysenter[], syscall32_sysenter_end[]; |