diff --git a/defs.h b/defs.h
index 71dbb14300c8b31d7cf01a2a8ec73cb34eb430c1..d0750de35f2331dff985242fcc0414c5c090a4ae 100644
--- a/defs.h
+++ b/defs.h
@@ -155,8 +155,10 @@ void            uartputc(int);
 // vm.c
 #define PGROUNDUP(sz)  ((sz+PGSIZE-1) & ~(PGSIZE-1))
 void            pminit(void);
-void            swkstack(void);
+void            ksegment(void);
 void            vminit(void);
+void            jkstack();
+void            printstack(void);
 void            printpgdir(uint*);
 uint*           setupkvm(void);    // XXX need pde_t*
 char*           uva2ka(uint*, char*);
@@ -165,7 +167,6 @@ void            freevm(uint*);
 void            inituvm(uint*, char*, char*, uint);
 int             loaduvm(uint*, char*, struct inode *ip, uint, uint);
 uint*           copyuvm(uint*,uint);
-void            ksegment(void);
 void            loadvm(struct proc*);
 
 // number of elements in fixed-size array
diff --git a/kalloc.c b/kalloc.c
index 200ea8d06acb3a3dbf70241dbd5d38972b78be11..7f47853159edd3565e2d13a238c9b714ffe6e20b 100644
--- a/kalloc.c
+++ b/kalloc.c
@@ -23,16 +23,6 @@ struct {
 
 int nfreemem;
 
-static void
-printfreelist(void)
-{
-  struct run *r, **rp;
-  cprintf("freelist:\n");
-  for(rp=&kmem.freelist; (r=*rp) != 0; rp=&r->next){
-    cprintf("0x%x %d=0x%x\n", r, r->len, r->len);
-  }
-}
-
 // Initialize free list of physical pages.
 // This code cheats by just considering one megabyte of
 // pages after end.  Real systems would determine the
diff --git a/spinlock.c b/spinlock.c
index 54e4eb577d94254ef9c963786f66d9bb74fa042c..68cfbe94af040f43f307ddd4462191bdf145893d 100644
--- a/spinlock.c
+++ b/spinlock.c
@@ -71,7 +71,7 @@ getcallerpcs(void *v, uint pcs[])
   
   ebp = (uint*)v - 2;
   for(i = 0; i < 10; i++){
-    if(ebp == 0 || ebp < 0x100000 || ebp == (uint*)0xffffffff)
+    if(ebp == 0 || ebp < (uint *) 0x100000 || ebp == (uint*)0xffffffff)
       break;
     pcs[i] = ebp[1];     // saved %eip
     ebp = (uint*)ebp[0]; // saved %ebp
diff --git a/syscall.c b/syscall.c
index 2785c0a4d3fca57573d35a822ea31655dfa7301e..ce79dbdb7cb77ee2e6a3042f112aa305ec2d90a9 100644
--- a/syscall.c
+++ b/syscall.c
@@ -34,10 +34,8 @@ fetchstr(struct proc *p, uint addr, char **pp)
 
   if(addr >= p->sz)
     return -1;
-  // *pp = p->mem + addr;
-  // ep = p->mem + p->sz;
-  *pp = (char **) addr;
-  ep = p->sz;
+  *pp = (char *) addr;
+  ep = (char *) p->sz;
   for(s = *pp; s < ep; s++)
     if(*s == 0)
       return s - *pp;