summaryrefslogtreecommitdiffstats
path: root/arch/um
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-09-05 23:20:33 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2012-09-20 09:53:01 -0400
commit344569aef36970f3b08cbd45cd19a941edc8066f (patch)
tree48b52677b17442288de5cf1322288ab8740aa245 /arch/um
parentab286b21aa95c9c46421c59a96bf7745ba2866ca (diff)
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.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/um/kernel/exec.c b/arch/um/kernel/exec.c
index 4cab0c78684..8c82786da82 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;