Fixes PF in sys_exec()
[akaros.git] / kern / src / syscall.c
index 58b6895..2062a03 100644 (file)
@@ -576,6 +576,8 @@ static int sys_exec(struct proc *p, char *path, size_t path_l,
        /* clear this, so the new program knows to get an LDT */
        p->procdata->ldt = 0;
        #endif
+       /* When we destroy our memory regions, accessing cur_sysc would PF */
+       pcpui->cur_kthread->sysc = 0;
        destroy_vmrs(p);
        close_all_files(&p->open_files, TRUE);
        env_user_mem_free(p, 0, UMAPTOP);