patch-1.3.26 linux/arch/alpha/kernel/process.c
Next file: linux/arch/alpha/kernel/signal.c
Previous file: linux/arch/alpha/kernel/irq.c
Back to the patch index
Back to the overall index
- Lines: 24
- Date:
Wed Sep 13 10:08:38 1995
- Orig file:
v1.3.25/linux/arch/alpha/kernel/process.c
- Orig date:
Sun Sep 3 12:26:48 1995
diff -u --recursive --new-file v1.3.25/linux/arch/alpha/kernel/process.c linux/arch/alpha/kernel/process.c
@@ -84,14 +84,20 @@
}
/*
- * "alpha_fork()".. By the time we get here, the
+ * "alpha_clone()".. By the time we get here, the
* non-volatile registers have also been saved on the
* stack. We do some ugly pointer stuff here.. (see
* also copy_thread)
+ *
+ * Notice that "fork()" is implemented in terms of clone,
+ * with parameters (SIGCHLD, 0).
*/
-int alpha_fork(struct switch_stack * swstack)
+int alpha_clone(unsigned long clone_flags, unsigned long usp,
+ struct switch_stack * swstack)
{
- return do_fork(SIGCHLD, rdusp(), (struct pt_regs *) (swstack+1));
+ if (!usp)
+ usp = rdusp();
+ return do_fork(clone_flags, usp, (struct pt_regs *) (swstack+1));
}
extern void ret_from_sys_call(void);
FUNET's LINUX-ADM group, [email protected]
TCL-scripts by Sam Shen, [email protected]
with Sam's (original) version of this