diff options
Diffstat (limited to 'arch/x86/include/asm/elf.h')
| -rw-r--r-- | arch/x86/include/asm/elf.h | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/arch/x86/include/asm/elf.h b/arch/x86/include/asm/elf.h index b4501ee223ad..f2ad2163109d 100644 --- a/arch/x86/include/asm/elf.h +++ b/arch/x86/include/asm/elf.h | |||
| @@ -170,10 +170,7 @@ static inline void elf_common_init(struct thread_struct *t, | |||
| 170 | } | 170 | } |
| 171 | 171 | ||
| 172 | #define ELF_PLAT_INIT(_r, load_addr) \ | 172 | #define ELF_PLAT_INIT(_r, load_addr) \ |
| 173 | do { \ | 173 | elf_common_init(¤t->thread, _r, 0) |
| 174 | elf_common_init(¤t->thread, _r, 0); \ | ||
| 175 | clear_thread_flag(TIF_IA32); \ | ||
| 176 | } while (0) | ||
| 177 | 174 | ||
| 178 | #define COMPAT_ELF_PLAT_INIT(regs, load_addr) \ | 175 | #define COMPAT_ELF_PLAT_INIT(regs, load_addr) \ |
| 179 | elf_common_init(¤t->thread, regs, __USER_DS) | 176 | elf_common_init(¤t->thread, regs, __USER_DS) |
| @@ -181,14 +178,8 @@ do { \ | |||
| 181 | void start_thread_ia32(struct pt_regs *regs, u32 new_ip, u32 new_sp); | 178 | void start_thread_ia32(struct pt_regs *regs, u32 new_ip, u32 new_sp); |
| 182 | #define compat_start_thread start_thread_ia32 | 179 | #define compat_start_thread start_thread_ia32 |
| 183 | 180 | ||
| 184 | #define COMPAT_SET_PERSONALITY(ex) \ | 181 | void set_personality_ia32(void); |
| 185 | do { \ | 182 | #define COMPAT_SET_PERSONALITY(ex) set_personality_ia32() |
| 186 | if (test_thread_flag(TIF_IA32)) \ | ||
| 187 | clear_thread_flag(TIF_ABI_PENDING); \ | ||
| 188 | else \ | ||
| 189 | set_thread_flag(TIF_ABI_PENDING); \ | ||
| 190 | current->personality |= force_personality32; \ | ||
| 191 | } while (0) | ||
| 192 | 183 | ||
| 193 | #define COMPAT_ELF_PLATFORM ("i686") | 184 | #define COMPAT_ELF_PLATFORM ("i686") |
| 194 | 185 | ||
