From 0b6ab8416e50dcbf790163282f461647e180dbc6 Mon Sep 17 00:00:00 2001
From: kaashoek <kaashoek>
Date: Sun, 3 Sep 2006 17:34:09 +0000
Subject: [PATCH] don't send keyboard interrupts to the second cpu, if we have
 only one cpu. xv6 seems to work fine on uniprocessor now.

---
 Notes     | 1 -
 console.c | 5 +++--
 2 files changed, 3 insertions(+), 3 deletions(-)

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;
 }
-- 
GitLab