diff --git a/BUGS b/BUGS new file mode 100644 index 0000000..a051750 --- /dev/null +++ b/BUGS @@ -0,0 +1,36 @@ +missing bootmain.c from printout +funny \ alignment in mmu.h + +main.c: + should use static int bcpu to avoid having live + stack variable across the asm volatile that + changes %esp and %ebp. + +init.c: + should while(wait() >= 0); + not just wait(); + +proc.c: + comment at top of scheduler() should say + via longjmp back to the scheduler + not + via longjmp back to the top of scheduler + + sched should panic if state == RUNNING. + + forkret comment should say "Return" not "return" + + as a consequence of the implementation of proc_kill, + any loop calling sleep should check for p->killed + and be able to break out with an error return. + + can swap procdump up after proc_kill + and then have proc_exit and proc_wait on same sheet + + proc_exit should wake up proc[1] if any + reparenting was done. + +trap.c + if spin locks are ever held without cli, + trap should call yield() only if nlock == 0 +