summaryrefslogtreecommitdiff
path: root/kernel/syscall.c
diff options
context:
space:
mode:
authorRobert Morris <[email protected]>2019-07-10 09:24:50 -0400
committerRobert Morris <[email protected]>2019-07-10 09:24:50 -0400
commit5eb1685700a7665814f1bcf63fc26f5dbf0f719a (patch)
tree1761a1065a9dca8952c864f6bdef4cabf1568160 /kernel/syscall.c
parent9981bb227093373649acd019d378dfccb54189c8 (diff)
downloadxv6-labs-5eb1685700a7665814f1bcf63fc26f5dbf0f719a.tar.gz
xv6-labs-5eb1685700a7665814f1bcf63fc26f5dbf0f719a.tar.bz2
xv6-labs-5eb1685700a7665814f1bcf63fc26f5dbf0f719a.zip
have kill() lock before looking at p->pid
document wait()'s use of np->parent w/o holding lock.
Diffstat (limited to 'kernel/syscall.c')
-rw-r--r--kernel/syscall.c16
1 files changed, 2 insertions, 14 deletions
diff --git a/kernel/syscall.c b/kernel/syscall.c
index a054da2..adbad73 100644
--- a/kernel/syscall.c
+++ b/kernel/syscall.c
@@ -163,8 +163,8 @@ static uint64 (*syscalls[])(void) = {
[SYS_close] sys_close,
};
-static void
-dosyscall(void)
+void
+syscall(void)
{
int num;
struct proc *p = myproc();
@@ -180,15 +180,3 @@ dosyscall(void)
p->tf->a0 = -1;
}
}
-
-void
-syscall()
-{
- if(myproc()->killed)
- exit();
- dosyscall();
- if(myproc()->killed)
- exit();
- return;
-}
-