Make tests public. Rewrite most tests. Add tests.
[pintos-anon] / src / devices / disk.c
index 971f3af537288f38523d92e0807e2489870e33f6..0a131740b00711bc94af611330518d9e919b18f5 100644 (file)
@@ -123,9 +123,9 @@ disk_init (void)
         default:
           NOT_REACHED ();
         }
-      lock_init (&c->lock, c->name);
+      lock_init (&c->lock);
       c->expecting_interrupt = false;
-      sema_init (&c->completion_wait, 0, c->name);
+      sema_init (&c->completion_wait, 0);
  
       /* Initialize devices. */
       for (dev_no = 0; dev_no < 2; dev_no++)
@@ -142,7 +142,7 @@ disk_init (void)
         }
 
       /* Register interrupt handler. */
-      intr_register (c->irq, 0, INTR_OFF, interrupt_handler, c->name);
+      intr_register_ext (c->irq, interrupt_handler, c->name);
 
       /* Reset hardware. */
       reset_channel (c);
@@ -179,7 +179,14 @@ disk_print_stats (void)
 }
 
 /* Returns the disk numbered DEV_NO--either 0 or 1 for master or
-   slave, respectively--within the channel numbered CHAN_NO. */
+   slave, respectively--within the channel numbered CHAN_NO.
+
+   Pintos uses disks this way:
+        0:0 - operating system kernel
+        0:1 - file system
+        1:0 - scratch
+        1:1 - swap
+*/
 struct disk *
 disk_get (int chan_no, int dev_no) 
 {