From 8cddebd767c5059257022cfbc2ac53fd81c09c94 Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Wed, 17 Oct 2012 02:26:48 -0400
Subject: [PATCH] um: don't bother with passing sp to do_fork() for
 fork(2)/vfork(2)

copy_thread() on um will do the right thing when getting 0 for sp...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
 arch/um/kernel/syscall.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/arch/um/kernel/syscall.c b/arch/um/kernel/syscall.c
index a81f3705e90f..3a875226c8ef 100644
--- a/arch/um/kernel/syscall.c
+++ b/arch/um/kernel/syscall.c
@@ -16,23 +16,19 @@
 
 long sys_fork(void)
 {
-	return do_fork(SIGCHLD, UPT_SP(&current->thread.regs.regs),
+	return do_fork(SIGCHLD, 0,
 		      &current->thread.regs, 0, NULL, NULL);
 }
 
 long sys_vfork(void)
 {
-	return do_fork(CLONE_VFORK | CLONE_VM | SIGCHLD,
-		      UPT_SP(&current->thread.regs.regs),
+	return do_fork(CLONE_VFORK | CLONE_VM | SIGCHLD, 0,
 		      &current->thread.regs, 0, NULL, NULL);
 }
 
 long sys_clone(unsigned long clone_flags, unsigned long newsp,
 	       void __user *parent_tid, void __user *child_tid)
 {
-	if (!newsp)
-		newsp = UPT_SP(&current->thread.regs.regs);
-
 	return do_fork(clone_flags, newsp, &current->thread.regs, 0, parent_tid,
 		      child_tid);
 }
-- 
GitLab