diff --git a/Notes b/Notes index 4e1703b..8b47668 100644 --- a/Notes +++ b/Notes @@ -117,7 +117,6 @@ echo foo > bar should truncate bar so O_CREATE should not truncate but O_TRUNC should -make it work on one cpu make it work on a real machine release before acquire at end of sleep? check 2nd disk (i.e. if not in .bochsrc) diff --git a/console.c b/console.c index 1a64122..438e332 100644 --- a/console.c +++ b/console.c @@ -365,8 +365,9 @@ console_read(int minor, char *dst, int n) acquire(&kbd_lock); - while(kbd_w == kbd_r) + while(kbd_w == kbd_r) { sleep(&kbd_r, &kbd_lock); + } while(n > 0 && kbd_w != kbd_r){ *dst = (kbd_buf[kbd_r]) & 0xff; @@ -392,7 +393,7 @@ console_init() devsw[CONSOLE].d_write = console_write; devsw[CONSOLE].d_read = console_read; - ioapic_enable (IRQ_KBD, 1); + ioapic_enable (IRQ_KBD, 0); use_console_lock = 1; }