diff options
author | Andi Kleen <ak@suse.de> | 2007-10-17 18:04:33 +0200 |
---|---|---|
committer | Thomas Gleixner <tglx@inhelltoy.tec.linutronix.de> | 2007-10-17 20:15:30 +0200 |
commit | f891dd18c107d582c3ab98da5209c930e16baf78 (patch) | |
tree | 3a90f43596ff5b362053715f969d6afdafd98b8e /arch/x86/ia32 | |
parent | 1c5b5cfd290b6cb7c67020ef420e275f746a7236 (diff) | |
download | linux-f891dd18c107d582c3ab98da5209c930e16baf78.tar.bz2 |
x86: initialize 64bit registers for a.out executables
Previously the data from before the exec was kept in there. Zero
them instead.
[ tglx: arch/x86 adaptation ]
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/ia32')
-rw-r--r-- | arch/x86/ia32/ia32_aout.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/ia32/ia32_aout.c b/arch/x86/ia32/ia32_aout.c index 7cf1c29bf90e..f82e1a94fcb7 100644 --- a/arch/x86/ia32/ia32_aout.c +++ b/arch/x86/ia32/ia32_aout.c @@ -420,6 +420,8 @@ beyond_if: (regs)->eflags = 0x200; (regs)->cs = __USER32_CS; (regs)->ss = __USER32_DS; + regs->r8 = regs->r9 = regs->r10 = regs->r11 = + regs->r12 = regs->r13 = regs->r14 = regs->r15 = 0; set_fs(USER_DS); if (unlikely(current->ptrace & PT_PTRACED)) { if (current->ptrace & PT_TRACE_EXEC) |