geekos/idt.o: ../src/geekos/idt.c ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/defs.h ../include/geekos/idt.h \
   ../include/geekos/int.h ../include/geekos/serial.h \
   ../include/geekos/irq.h ../include/geekos/string.h \
   ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/io.h ../include/geekos/debug.h
 geekos/int.o: ../src/geekos/int.c ../include/geekos/idt.h \
   ../include/geekos/int.h ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/defs.h ../include/geekos/serial.h \
   ../include/geekos/irq.h ../include/geekos/string.h \
   ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/io.h ../include/geekos/debug.h \
   ../include/geekos/cpu.h
 geekos/trap.o: ../src/geekos/trap.c ../include/geekos/idt.h \
   ../include/geekos/int.h ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/defs.h ../include/geekos/kthread.h \
   ../include/geekos/list.h ../include/geekos/trap.h \
   ../include/geekos/serial.h ../include/geekos/irq.h \
   ../include/geekos/string.h ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/io.h ../include/geekos/debug.h
 geekos/irq.o: ../src/geekos/irq.c ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/idt.h ../include/geekos/int.h \
-  ../include/geekos/defs.h ../include/geekos/io.h ../include/geekos/irq.h
+  ../include/geekos/defs.h ../include/geekos/io.h ../include/geekos/irq.h \
+  ../include/geekos/debug.h ../include/geekos/serial.h \
+  ../include/geekos/string.h ../include/geekos/../libc/string.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h
 geekos/io.o: ../src/geekos/io.c ../include/geekos/io.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h
 geekos/blockdev.o: ../src/geekos/blockdev.c ../include/geekos/errno.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/string.h ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/malloc.h ../include/geekos/int.h \
   ../include/geekos/kassert.h ../include/geekos/defs.h \
   ../include/geekos/kthread.h ../include/geekos/list.h \
   ../include/geekos/irq.h ../include/geekos/int.h \
   ../include/geekos/kassert.h ../include/geekos/screen.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/defs.h ../include/geekos/string.h \
   ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/io.h ../include/geekos/errno.h \
   ../include/geekos/malloc.h ../include/geekos/timer.h \
   ../include/geekos/kthread.h ../include/geekos/list.h \
   ../include/geekos/ide.h
 geekos/keyboard.o: ../src/geekos/keyboard.c ../include/geekos/kthread.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/list.h ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/fmtout.h \
   ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/irq.h ../include/geekos/int.h \
   ../include/geekos/defs.h ../include/geekos/io.h \
   ../include/geekos/keyboard.h
 geekos/screen.o: ../src/geekos/screen.c \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/kassert.h ../include/geekos/screen.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
   ../include/geekos/io.h ../include/geekos/int.h ../include/geekos/defs.h \
   ../include/geekos/debug.h ../include/geekos/serial.h \
   ../include/geekos/irq.h ../include/geekos/string.h \
   ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h
 geekos/timer.o: ../src/geekos/timer.c \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/limits.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/limits.h \
   ../include/geekos/io.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/int.h ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/fmtout.h \
   ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/defs.h ../include/geekos/irq.h \
   ../include/geekos/kthread.h ../include/geekos/list.h \
   ../include/geekos/timer.h ../include/geekos/serial.h \
   ../include/geekos/string.h ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/debug.h
 geekos/mem.o: ../src/geekos/mem.c ../include/geekos/defs.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/kassert.h ../include/geekos/screen.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/bootinfo.h ../include/geekos/gdt.h \
   ../include/geekos/int.h ../include/geekos/malloc.h \
   ../include/geekos/string.h ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/mem.h ../include/geekos/list.h \
   ../include/geekos/paging.h ../include/geekos/serial.h \
   ../include/geekos/irq.h ../include/geekos/io.h \
   ../include/geekos/debug.h
 geekos/crc32.o: ../src/geekos/crc32.c ../include/geekos/crc32.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/kassert.h ../include/geekos/screen.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/serial.h ../include/geekos/irq.h \
   ../include/geekos/int.h ../include/geekos/defs.h \
   ../include/geekos/string.h ../include/geekos/../libc/string.h \
   ../include/geekos/io.h ../include/geekos/debug.h
 geekos/gdt.o: ../src/geekos/gdt.c ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/segment.h ../include/geekos/int.h \
   ../include/geekos/defs.h ../include/geekos/tss.h \
   ../include/geekos/gdt.h ../include/libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/debug.h ../include/geekos/serial.h \
   ../include/geekos/irq.h ../include/geekos/string.h \
   ../include/geekos/../libc/string.h ../include/geekos/io.h
 geekos/tss.o: ../src/geekos/tss.c ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/defs.h ../include/geekos/gdt.h \
   ../include/geekos/segment.h ../include/geekos/string.h \
   ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/tss.h ../include/geekos/serial.h \
   ../include/geekos/irq.h ../include/geekos/int.h ../include/geekos/io.h \
   ../include/geekos/debug.h
 geekos/segment.o: ../src/geekos/segment.c ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/string.h ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/tss.h ../include/geekos/segment.h
 geekos/bget.o: ../src/geekos/bget.c ../include/geekos/string.h \
   ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/kassert.h ../include/geekos/screen.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/bget.h
 geekos/malloc.o: ../src/geekos/malloc.c ../include/geekos/screen.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/int.h ../include/geekos/kassert.h \
   ../include/geekos/defs.h ../include/geekos/bget.h \
   ../include/geekos/malloc.h
 geekos/synch.o: ../src/geekos/synch.c ../include/geekos/kthread.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/list.h ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/fmtout.h \
   ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/int.h ../include/geekos/defs.h \
   ../include/geekos/synch.h
 geekos/kthread.o: ../src/geekos/kthread.c ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/defs.h ../include/geekos/int.h \
   ../include/geekos/mem.h ../include/geekos/list.h \
   ../include/geekos/paging.h ../include/geekos/bootinfo.h \
   ../include/geekos/symbol.h ../include/geekos/string.h \
   ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/kthread.h ../include/geekos/malloc.h \
   ../include/geekos/serial.h ../include/geekos/irq.h \
   ../include/geekos/io.h ../include/geekos/debug.h
   ../include/geekos/irq.h ../include/geekos/int.h \
   ../include/geekos/kassert.h ../include/geekos/screen.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/defs.h ../include/geekos/string.h \
   ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/io.h ../include/geekos/reboot.h \
   ../include/geekos/gdt.h ../include/geekos/idt.h
 geekos/reboot.o: ../src/geekos/reboot.c ../include/geekos/reboot.h \
   ../include/libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h
 geekos/paging.o: ../src/geekos/paging.c ../include/geekos/string.h \
   ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/int.h ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/defs.h ../include/geekos/idt.h \
   ../include/geekos/kthread.h ../include/geekos/list.h \
   ../include/geekos/mem.h ../include/geekos/paging.h \
   ../include/geekos/serial.h ../include/geekos/irq.h \
   ../include/geekos/int.h ../include/geekos/kassert.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/defs.h ../include/geekos/string.h \
   ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/io.h
 geekos/vmm_stubs.o: ../src/geekos/vmm_stubs.c ../include/geekos/vmm_stubs.h \
   ../include/geekos/mem.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/defs.h ../include/geekos/list.h \
   ../include/geekos/kassert.h ../include/geekos/screen.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/paging.h ../include/geekos/bootinfo.h \
   ../include/geekos/malloc.h ../include/geekos/serial.h \
   ../include/geekos/irq.h ../include/geekos/int.h \
   ../include/geekos/string.h ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/io.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vmm_types.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_util.h \
   ../include/palacios/vmm_string.h ../include/palacios/vmm_irq.h
 geekos/vm.o: ../src/geekos/vm.c ../include/geekos/vmm_stubs.h \
   ../include/geekos/mem.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/defs.h ../include/geekos/list.h \
   ../include/geekos/kassert.h ../include/geekos/screen.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/paging.h ../include/geekos/bootinfo.h \
   ../include/geekos/malloc.h ../include/palacios/vmm.h \
   ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vmm_types.h \
   ../include/palacios/vm_guest.h ../include/palacios/vmm_io.h \
   ../include/palacios/vmm_util.h ../include/palacios/vmm_shadow_paging.h \
   ../include/devices/simple_pic.h ../include/devices/8259a.h
 geekos/main.o: ../src/geekos/main.c ../include/geekos/bootinfo.h \
   ../include/geekos/string.h ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/screen.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/geekos/mem.h ../include/geekos/defs.h \
   ../include/geekos/list.h ../include/geekos/kassert.h \
   ../include/geekos/paging.h ../include/geekos/crc32.h \
   ../include/geekos/debug.h ../include/geekos/vm.h \
   ../include/geekos/gdt.h ../include/geekos/vmm_stubs.h
 common/fmtout.o: ../src/common/fmtout.c \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/geekos/string.h ../include/geekos/../libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/limits.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/limits.h \
   ../include/geekos/fmtout.h ../include/geekos/../libc/fmtout.h
 common/string.o: ../src/common/string.c ../include/libc/fmtout.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdarg.h \
   ../include/libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h
 common/memmove.o: ../src/common/memmove.c ../include/libc/string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h
 palacios/vm_guest.o: ../src/palacios/vm_guest.c ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_util.h \
   ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vmm_list.h \
   ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_irq.h
 palacios/svm.o: ../src/palacios/svm.c ../include/palacios/svm.h \
   ../include/palacios/vmm_util.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
   ../include/palacios/svm_handler.h ../include/palacios/svm.h \
   ../include/palacios/vmm_util.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
   ../include/palacios/svm_ctrl_regs.h ../include/palacios/svm_io.h
 palacios/vmm.o: ../src/palacios/vmm.c ../include/palacios/vmm.h \
   ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vm_guest.h ../include/palacios/vmm_io.h \
   ../include/palacios/vmm_util.h ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
   ../include/palacios/vmcs.h ../include/palacios/vmcs_gen.h
 palacios/vmm_util.o: ../src/palacios/vmm_util.c ../include/palacios/vmm_util.h \
   ../include/palacios/vmm_types.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
   ../include/palacios/svm_ctrl_regs.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_util.h \
   ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vmm_list.h \
   ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_irq.h ../include/palacios/vmm.h \
   ../include/palacios/vmcb.h ../include/palacios/vmm_emulate.h \
   ../include/palacios/vm_guest_mem.h ../include/palacios/vmm_ctrl_regs.h
 palacios/vmcb.o: ../src/palacios/vmcb.c ../include/palacios/vmcb.h \
   ../include/palacios/vmm_types.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_util.h \
   ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_irq.h
 palacios/vmm_mem.o: ../src/palacios/vmm_mem.c ../include/palacios/vmm_mem.h \
   ../include/palacios/vmm_types.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vm_guest.h ../include/palacios/vmm_io.h \
   ../include/palacios/vmm_util.h ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
 palacios/vmm_paging.o: ../src/palacios/vmm_paging.c \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vmm_util.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vm_guest.h ../include/palacios/vmm_io.h \
   ../include/palacios/vmm_shadow_paging.h ../include/palacios/vmm_intr.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vmm_list.h \
   ../include/palacios/vmm_irq.h ../include/palacios/vm_guest_mem.h
 palacios/vmm_io.o: ../src/palacios/vmm_io.c ../include/palacios/vmm_io.h \
   ../include/palacios/vmm_types.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_util.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_mem.h \
   ../include/palacios/vm_guest.h ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
   ../include/palacios/vmm_irq.h
 palacios/vmm_debug.o: ../src/palacios/vmm_debug.c ../include/palacios/vmm_debug.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vm_guest.h ../include/palacios/vmm_io.h \
   ../include/palacios/vmm_util.h ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
 palacios/svm_io.o: ../src/palacios/svm_io.c ../include/palacios/svm_io.h \
   ../include/palacios/vm_guest.h ../include/palacios/vmm_mem.h \
   ../include/palacios/vmm_types.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_util.h \
   ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vmm_list.h \
   ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_irq.h ../include/palacios/vmcb.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_ctrl_regs.h \
   ../include/palacios/vmm_emulate.h ../include/palacios/vm_guest_mem.h
 palacios/vmm_intr.o: ../src/palacios/vmm_intr.c ../include/palacios/vmm_intr.h \
   ../include/palacios/vmm_types.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_util.h \
   ../include/palacios/vmm_shadow_paging.h \
 palacios/vmm_shadow_paging.o: ../src/palacios/vmm_shadow_paging.c \
   ../include/palacios/vmm_shadow_paging.h ../include/palacios/vmm_util.h \
   ../include/palacios/vmm_types.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_mem.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vm_guest.h ../include/palacios/vmm_io.h \
   ../include/palacios/vmm_intr.h ../include/palacios/vmm_dev_mgr.h \
   ../include/palacios/vmm_list.h ../include/palacios/vmm_irq.h \
   ../include/palacios/vm_guest_mem.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_util.h \
   ../include/palacios/vmm_shadow_paging.h \
   ../include/palacios/vmm_paging.h ../include/palacios/vmm_intr.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vmm_list.h \
   ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_irq.h ../include/palacios/vmm.h
 palacios/vm_dev.o: ../src/palacios/vm_dev.c ../include/palacios/vm_dev.h \
   ../include/palacios/vmm_types.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_list.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vmm.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_util.h \
   ../include/palacios/vmm_irq.h
 palacios/vmm_dev_mgr.o: ../src/palacios/vmm_dev_mgr.c ../include/palacios/vm_dev.h \
   ../include/palacios/vmm_types.h ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_list.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vmm_io.h \
   ../include/palacios/vmm_util.h ../include/palacios/vmm_shadow_paging.h \
 devices/nvram.o: ../src/devices/nvram.c ../include/devices/nvram.h \
   ../include/palacios/vm_dev.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_list.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vmm.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_util.h \
 devices/timer.o: ../src/devices/timer.c ../include/devices/timer.h \
   ../include/palacios/vm_dev.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_list.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vmm.h \
   ../include/palacios/vmm_mem.h ../include/palacios/vm_guest.h \
   ../include/palacios/vmm_io.h ../include/palacios/vmm_util.h \
 devices/simple_pic.o: ../src/devices/simple_pic.c ../include/devices/simple_pic.h \
   ../include/palacios/vm_dev.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_list.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vmm_intr.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_mem.h \
   ../include/palacios/vm_guest.h ../include/palacios/vmm_io.h \
 devices/8259a.o: ../src/devices/8259a.c ../include/devices/8259a.h \
   ../include/palacios/vm_dev.h ../include/palacios/vmm_types.h \
   ../include/geekos/ktypes.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stdbool.h \
   ../include/palacios/vmm_list.h ../include/palacios/vmm_string.h \
-  /home/pdinda/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
+  /home/jarusl/vmm-dev/devtools/i386/lib/gcc/i386-elf/3.4.6/include/stddef.h \
   ../include/palacios/vmm_dev_mgr.h ../include/palacios/vmm_intr.h \
   ../include/palacios/vmm.h ../include/palacios/vmm_mem.h \
   ../include/palacios/vm_guest.h ../include/palacios/vmm_io.h \
 
  
       addr_t first_operand;
       addr_t second_operand;
-      struct cr0_real *old_cr0;
+      struct cr0_real *real_cr0;
       struct cr0_real *new_cr0;
       operand_type_t addr_type;
       char new_cr0_val = 0;
       // decode mod/RM
       index += 2;
  
-      old_cr0 = (struct cr0_real*)&(guest_state->cr0);
-
+      real_cr0 = (struct cr0_real*)&(guest_state->cr0);
 
       addr_type = decode_operands16(&(info->vm_regs), instr + index, &index, &first_operand, &second_operand, REG16);
 
        return -1;
       }
                 
-      if ((new_cr0->pe == 1) && (old_cr0->pe == 0)) {
+      if ((new_cr0->pe == 1) && (real_cr0->pe == 0)) {
        info->cpu_mode = PROTECTED;
-      } else if ((new_cr0->pe == 0) && (old_cr0->pe == 1)) {
+      } else if ((new_cr0->pe == 0) && (real_cr0->pe == 1)) {
        info->cpu_mode = REAL;
       }
       
 
 
       if (info->page_mode == SHADOW_PAGING) {
-       struct cr0_real * virt_cr0 = (struct cr0_real*)&(info->shdw_pg_state.guest_cr0);
+       struct cr0_real * shadow_cr0 = (struct cr0_real*)&(info->shdw_pg_state.guest_cr0);
 
+       PrintDebug("Old CR0=%x, Old Shadow CR0=%x\n", *real_cr0, *shadow_cr0);  
        /* struct cr0_real is only 4 bits wide, 
-        * so we can overwrite the old_cr0 without worrying about the shadow fields
+        * so we can overwrite the real_cr0 without worrying about the shadow fields
         */
-       *(char*)old_cr0 &= 0xf0;
-       *(char*)old_cr0 |= new_cr0_val;
+       *(char*)real_cr0 &= 0xf0;
+       *(char*)real_cr0 |= new_cr0_val;
        
-       *(char*)virt_cr0 &= 0xf0;
-       *(char*)virt_cr0 |= new_cr0_val;
+       *(char*)shadow_cr0 &= 0xf0;
+       *(char*)shadow_cr0 |= new_cr0_val;
+
+       PrintDebug("New CR0=%x, New Shadow CR0=%x\n", *real_cr0, *shadow_cr0);  
       } else {
+       PrintDebug("Old CR0=%x\n", *real_cr0);  
        // for now we just pass through....
-       *(char*)old_cr0 &= 0xf0;
-       *(char*)old_cr0 |= new_cr0_val;
+       *(char*)real_cr0 &= 0xf0;
+       *(char*)real_cr0 |= new_cr0_val;
+
+       PrintDebug("New CR0=%x\n", *real_cr0);  
       }
 
-      PrintDebug("index = %d, rip = %x\n", index, (ulong_t)(info->rip));
+
       info->rip += index;
-      PrintDebug("new_rip = %x\n", (ulong_t)(info->rip));
+
     } else if ((instr[index] == cr_access_byte) && 
               (instr[index + 1] == clts_byte)) {
       // CLTS
+
+
+    } else if ((instr[index] == cr_access_byte) && 
+              (instr[index + 1] = mov_to_cr_byte)) {
+      addr_t first_operand;
+      addr_t second_operand;
+      struct cr0_32 *real_cr0;
+      struct cr0_32 *new_cr0;
+      operand_type_t addr_type;
+     
+      
+      index += 2;
+ 
+      real_cr0 = (struct cr0_32*)&(guest_state->cr0);
+
+      addr_type = decode_operands16(&(info->vm_regs), instr + index, &index, &first_operand, &second_operand, REG32);
+
+      if (addr_type != REG_OPERAND) {
+       /* Mov to CR0 Can only be a 32 bit register */
+       // FIX ME
+       return -1;
+      }
+
+      new_cr0 = (struct cr0_32 *)first_operand;
+
+      if (new_cr0->pe == 1) {
+       PrintDebug("Entering Protected Mode\n");
+       info->cpu_mode = PROTECTED;
+      }
+
+      if (new_cr0->pg == 1) {
+       // GPF the guest??
+       return -1;
+      }
+
+      if (info->page_mode == SHADOW_PAGING) {
+       struct cr0_32 * shadow_cr0 = (struct cr0_32 *)&(info->shdw_pg_state.guest_cr0);
+       
+       PrintDebug("Old CR0=%x, Old Shadow CR0=%x\n", *real_cr0, *shadow_cr0);  
+       *real_cr0 = *new_cr0;
+       real_cr0->pg = 1;
+
+       *shadow_cr0 = *new_cr0;
+
+       PrintDebug("New CR0=%x, New Shadow CR0=%x\n", *real_cr0, *shadow_cr0);  
+      } else {
+       PrintDebug("Old CR0=%x\n", *real_cr0);  
+       *real_cr0 = *new_cr0;
+       PrintDebug("New CR0=%x\n", *real_cr0);  
+      }
+
+      info->rip += index;
+
     } else {
+      PrintDebug("Unsupported Instruction\n");
       // unsupported instruction, UD the guest
       return -1;
     }
 
     // The real rip address is actually a combination of the rip + CS base 
     ret = read_guest_pa_memory(info, get_addr_linear(info, guest_state->rip, guest_state->cs.base), 15, instr);
-    if (ret != 0) {
+    if (ret != 15) {
       // I think we should inject a GPF into the guest
       PrintDebug("Could not read instruction (ret=%d)\n", ret);
       return -1;
     
       addr_t first_operand;
       addr_t second_operand;
-      struct cr0_32 *old_cr0;
+      struct cr0_32 *real_cr0;
       struct cr0_32 *new_cr0;
       operand_type_t addr_type;
 
       index += 2;
  
-      old_cr0 = (struct cr0_32*)&(guest_state->cr0);
+      real_cr0 = (struct cr0_32*)&(guest_state->cr0);
 
       addr_type = decode_operands32(&(info->vm_regs), instr + index, &index, &first_operand, &second_operand, REG32);
 
-
-      if (addr_type == REG_OPERAND) {
-       new_cr0 = (struct cr0_32 *)first_operand;
-      } else if (addr_type == MEM_OPERAND) {
-       addr_t host_addr;
-
-       if (guest_pa_to_host_va(info, first_operand + guest_state->ds.base, &host_addr) == -1) {
-         // gpf the guest
-         return -1;
-       }
-
-       new_cr0 = (struct cr0_32 *)host_addr;
-      } else {
-       // error... don't know what to do
+      if (addr_type != REG_OPERAND) {
        return -1;
       }
 
+      new_cr0 = (struct cr0_32 *)first_operand;
+
 
       if (info->page_mode == SHADOW_PAGING) {
-       struct cr0_32 * virt_cr0 = (struct cr0_32 *)&(info->shdw_pg_state.guest_cr0);
+       struct cr0_32 * shadow_cr0 = (struct cr0_32 *)&(info->shdw_pg_state.guest_cr0);
 
-       if ((new_cr0->pg == 1) && (virt_cr0->pg == 0)){
+       if (new_cr0->pg == 1){
          info->cpu_mode = PROTECTED_PG;
+         
+         *shadow_cr0 = *new_cr0;
+         *real_cr0 = *new_cr0;
 
+         //
          // Activate Shadow Paging
+         //
+
+       } else if (new_cr0->pe == 0) {
+         info->cpu_mode = REAL;
+
+         *shadow_cr0 = *new_cr0;
+         *real_cr0 = *new_cr0;
+         real_cr0->pg = 1;
        }
 
-       *virt_cr0 = *new_cr0;
-       *old_cr0 = *new_cr0;
+
       } else {
-       // fill in
+       *real_cr0 = *new_cr0;
       }
 
       info->rip += index;
     }
     
-  } else {
+  } else { 
     PrintDebug("Unknown Mode write to CR0\n");
-    while(1);
+    return -1;
   }
   return 0;
 }
       PrintDebug("index = %d, rip = %x\n", index, (ulong_t)(info->rip));
       info->rip += index;
       PrintDebug("new_rip = %x\n", (ulong_t)(info->rip));
-    } else {
-      addr_t host_addr;
+    } else if ((instr[index] == cr_access_byte) &&
+              (instr[index+1] == mov_from_cr_byte)) {
+      /* Mov from CR0
+       * This can only take a 32 bit register argument in anything less than 64 bit mode.
+       */
+      addr_t first_operand;
+      addr_t second_operand;
+      operand_type_t addr_type;
 
-      PrintDebug("Unknown read instr to CR0\n");
-      guest_pa_to_host_pa(info, get_addr_linear(info, guest_state->rip, guest_state->cs.selector), &host_addr);
-      
-      PrintDebug("Instr (15 bytes) at %x:\n", host_addr);
-      PrintTraceMemDump((char*)host_addr, 15);
+      struct cr0_32 * real_cr0 = (struct cr0_32 *)&(guest_state->cr0);
+
+      index += 2;
+
+      addr_type = decode_operands16(&(info->vm_regs), instr + index, &index, &first_operand, &second_operand, REG32);
+     
+      struct cr0_32 * virt_cr0 = (struct cr0_32 *)first_operand;
+  
+      if (addr_type != REG_OPERAND) {
+       // invalid opcode to guest
+       PrintDebug("Invalid operand type in mov from CR0\n");
+       return -1;
+      }
+
+      if (info->page_mode == SHADOW_PAGING) {
+       *virt_cr0 = *(struct cr0_32 *)&(info->shdw_pg_state.guest_cr0);
+      } else {
+       *virt_cr0 = *real_cr0;
+      }
+
+      info->rip += index;
 
+    } else {
+      PrintDebug("Unknown read instr from CR0\n");
       return -1;
     }
 
     }
 
 
+    if ((instr[index] == cr_access_byte) &&
+       (instr[index+1] == mov_from_cr_byte)) {
+      addr_t first_operand;
+      addr_t second_operand;
+      operand_type_t addr_type;
+      struct cr0_32 * virt_cr0;
+      struct cr0_32 * real_cr0 = (struct cr0_32 *)&(guest_state->cr0);
+
+      index += 2;
+
+      addr_type = decode_operands32(&(info->vm_regs), instr + index, &index, &first_operand, &second_operand, REG32);
+
+      if (addr_type != REG_OPERAND) {
+       PrintDebug("Invalid operand type in mov from CR0\n");
+       return -1;
+      }
+      
+      virt_cr0 = (struct cr0_32 *)first_operand;
+
+      if (info->page_mode == SHADOW_PAGING) {
+       *virt_cr0 = *(struct cr0_32 *)&(info->shdw_pg_state.guest_cr0);
+      } else {
+       *virt_cr0 = *real_cr0;
+      }
+      
+      info->rip += index;
+
+    } else { 
+      PrintDebug("Unknown read instruction from CR0\n");
+      return -1;
+    }
+
+  } else {
+    PrintDebug("Unknown mode read from CR0\n");
+    return -1;
   }