summaryrefslogtreecommitdiff
path: root/sys/kern/kern_exec.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/kern/kern_exec.c')
-rw-r--r--sys/kern/kern_exec.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/kern/kern_exec.c b/sys/kern/kern_exec.c
index ceb08f6..863f4ae 100644
--- a/sys/kern/kern_exec.c
+++ b/sys/kern/kern_exec.c
@@ -32,6 +32,7 @@
#include <sys/errno.h>
#include <sys/proc.h>
#include <sys/sched.h>
+#include <sys/signal.h>
#include <vm/vm.h>
#include <vm/map.h>
#include <vm/physmem.h>
@@ -97,9 +98,10 @@ execve(struct proc *td, const struct execve_args *args)
prog.envp = args->envp;
stack_top = td->stack_base + (PROC_STACK_SIZE - 1);
- /* Setup registers and stack */
+ /* Setup registers, signals and stack */
md_td_stackinit(td, (void *)(stack_top + VM_HIGHER_HALF), &prog);
setregs(td, &prog, stack_top);
+ signals_init(td);
/* Done, reset flags and start the user thread */
td->flags &= ~PROC_EXEC;