diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2012-09-05 23:20:33 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-09-20 09:53:01 -0400 |
commit | 344569aef36970f3b08cbd45cd19a941edc8066f (patch) | |
tree | 48b52677b17442288de5cf1322288ab8740aa245 /arch/um | |
parent | ab286b21aa95c9c46421c59a96bf7745ba2866ca (diff) | |
download | talos-op-linux-344569aef36970f3b08cbd45cd19a941edc8066f.tar.gz talos-op-linux-344569aef36970f3b08cbd45cd19a941edc8066f.zip |
um: don't leak floating point state and segment registers on execve()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/um')
-rw-r--r-- | arch/um/kernel/exec.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/um/kernel/exec.c b/arch/um/kernel/exec.c index 4cab0c78684b..8c82786da823 100644 --- a/arch/um/kernel/exec.c +++ b/arch/um/kernel/exec.c @@ -39,6 +39,7 @@ void flush_thread(void) void start_thread(struct pt_regs *regs, unsigned long eip, unsigned long esp) { + get_safe_registers(regs->regs.gp, regs->regs.fp); PT_REGS_IP(regs) = eip; PT_REGS_SP(regs) = esp; current->ptrace &= ~PT_DTRACE; |