aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/ia32/ia32_aout.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/arch/x86/ia32/ia32_aout.c b/arch/x86/ia32/ia32_aout.c
index 2a4d073d2cf1..435d2a5323da 100644
--- a/arch/x86/ia32/ia32_aout.c
+++ b/arch/x86/ia32/ia32_aout.c
@@ -308,15 +308,17 @@ static int load_aout_binary(struct linux_binprm *bprm, struct pt_regs *regs)
308 if (retval) 308 if (retval)
309 return retval; 309 return retval;
310 310
311 regs->cs = __USER32_CS;
312 regs->r8 = regs->r9 = regs->r10 = regs->r11 = regs->r12 =
313 regs->r13 = regs->r14 = regs->r15 = 0;
314
315 /* OK, This is the point of no return */ 311 /* OK, This is the point of no return */
316 set_personality(PER_LINUX); 312 set_personality(PER_LINUX);
317 set_thread_flag(TIF_IA32); 313 set_thread_flag(TIF_IA32);
318 clear_thread_flag(TIF_ABI_PENDING); 314 clear_thread_flag(TIF_ABI_PENDING);
319 315
316 setup_new_exec(bprm);
317
318 regs->cs = __USER32_CS;
319 regs->r8 = regs->r9 = regs->r10 = regs->r11 = regs->r12 =
320 regs->r13 = regs->r14 = regs->r15 = 0;
321
320 current->mm->end_code = ex.a_text + 322 current->mm->end_code = ex.a_text +
321 (current->mm->start_code = N_TXTADDR(ex)); 323 (current->mm->start_code = N_TXTADDR(ex));
322 current->mm->end_data = ex.a_data + 324 current->mm->end_data = ex.a_data +