diff options
author | Robert Morris <[email protected]> | 2020-11-01 11:11:38 -0500 |
---|---|---|
committer | Frans Kaashoek <[email protected]> | 2020-11-05 06:56:51 -0500 |
commit | b48ea5d2209bb9addf43687739245734038b991e (patch) | |
tree | 96e9222e3230b55c445a26e2fd27efcba5a2ecdf | |
parent | 5e392531c07966fd8a6bee50e3e357c553fb2a2f (diff) | |
download | xv6-labs-b48ea5d2209bb9addf43687739245734038b991e.tar.gz xv6-labs-b48ea5d2209bb9addf43687739245734038b991e.tar.bz2 xv6-labs-b48ea5d2209bb9addf43687739245734038b991e.zip |
free proc if kalloc fails
-rw-r--r-- | kernel/proc.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/proc.c b/kernel/proc.c index d847c43..87a81fb 100644 --- a/kernel/proc.c +++ b/kernel/proc.c @@ -116,6 +116,7 @@ found: // Allocate a trapframe page. if((p->trapframe = (struct trapframe *)kalloc()) == 0){ + freeproc(p); release(&p->lock); return 0; } |