summaryrefslogtreecommitdiff
path: root/proc.c
diff options
context:
space:
mode:
authorrtm <rtm>2008-08-28 17:57:47 +0000
committerrtm <rtm>2008-08-28 17:57:47 +0000
commitee3f75f229742a376bedafe34d0ba04995a942be (patch)
tree4aa2158f21a5d378b8288235b612c99ea7b27ae8 /proc.c
parent98754d687e1999eecf8de1b4557218f4f5c055c5 (diff)
downloadxv6-labs-ee3f75f229742a376bedafe34d0ba04995a942be.tar.gz
xv6-labs-ee3f75f229742a376bedafe34d0ba04995a942be.tar.bz2
xv6-labs-ee3f75f229742a376bedafe34d0ba04995a942be.zip
simplify growproc
Diffstat (limited to 'proc.c')
-rw-r--r--proc.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/proc.c b/proc.c
index a016cd4..cf982c1 100644
--- a/proc.c
+++ b/proc.c
@@ -49,16 +49,15 @@ allocproc(void)
int
growproc(int n)
{
- char *newmem, *oldmem;
+ char *newmem;
newmem = kalloc(cp->sz + n);
if(newmem == 0)
return -1;
memmove(newmem, cp->mem, cp->sz);
memset(newmem + cp->sz, 0, n);
- oldmem = cp->mem;
+ kfree(cp->mem, cp->sz);
cp->mem = newmem;
- kfree(oldmem, cp->sz);
cp->sz += n;
setupsegs(cp);
return cp->sz - n;