diff options
author | Robert Morris <[email protected]> | 2010-08-31 12:54:47 -0400 |
---|---|---|
committer | Robert Morris <[email protected]> | 2010-08-31 12:54:47 -0400 |
commit | 7d7dc9331bf33f77c9c3a71350782dadae8dd371 (patch) | |
tree | 4c9d10f56fe4f69b97820ef94db93f30acda6e65 /proc.c | |
parent | 81b30b14d6925a0f5c9eb114724457d90869949c (diff) | |
download | xv6-labs-7d7dc9331bf33f77c9c3a71350782dadae8dd371.tar.gz xv6-labs-7d7dc9331bf33f77c9c3a71350782dadae8dd371.tar.bz2 xv6-labs-7d7dc9331bf33f77c9c3a71350782dadae8dd371.zip |
kalloc/kfree now only a page at a time
do not keep sorted contiguous free list
Diffstat (limited to 'proc.c')
-rw-r--r-- | proc.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -84,7 +84,7 @@ found: release(&ptable.lock); // Allocate kernel stack if possible. - if((p->kstack = kalloc(KSTACKSIZE)) == 0){ + if((p->kstack = kalloc()) == 0){ p->state = UNUSED; return 0; } @@ -169,7 +169,7 @@ fork(void) // Copy process state from p. if (!(np->pgdir = copyuvm(proc->pgdir, proc->sz))) { - kfree(np->kstack, KSTACKSIZE); + kfree(np->kstack); np->kstack = 0; np->state = UNUSED; return -1; @@ -418,7 +418,7 @@ wait(void) if(p->state == ZOMBIE){ // Found one. pid = p->pid; - kfree(p->kstack, KSTACKSIZE); + kfree(p->kstack); p->kstack = 0; freevm(p->pgdir); p->state = UNUSED; |