diff --git a/kernel/virtio.h b/kernel/virtio.h
index 3d85583..96272b4 100644
--- a/kernel/virtio.h
+++ b/kernel/virtio.h
@@ -10,7 +10,7 @@
 // virtio mmio control registers, mapped starting at 0x10001000.
 // from qemu virtio_mmio.h
 #define VIRTIO_MMIO_MAGIC_VALUE		0x000 // 0x74726976
-#define VIRTIO_MMIO_VERSION		0x004 // version; 1 is legacy
+#define VIRTIO_MMIO_VERSION		0x004 // version; should be 2
 #define VIRTIO_MMIO_DEVICE_ID		0x008 // device type; 1 is net, 2 is disk
 #define VIRTIO_MMIO_VENDOR_ID		0x00c // 0x554d4551
 #define VIRTIO_MMIO_DEVICE_FEATURES	0x010
diff --git a/kernel/virtio_disk.c b/kernel/virtio_disk.c
index 249860b..ae6c164 100644
--- a/kernel/virtio_disk.c
+++ b/kernel/virtio_disk.c
@@ -20,20 +20,20 @@
 #define R(r) ((volatile uint32 *)(VIRTIO0 + (r)))
 
 static struct disk {
-  // the first is a set (not a ring) of DMA descriptors, with which the
+  // a set (not a ring) of DMA descriptors, with which the
   // driver tells the device where to read and write individual
   // disk operations. there are NUM descriptors.
   // most commands consist of a "chain" (a linked list) of a couple of
   // these descriptors.
   struct virtq_desc *desc;
 
-  // next is a ring in which the driver writes descriptor numbers
+  // a ring in which the driver writes descriptor numbers
   // that the driver would like the device to process.  it only
   // includes the head descriptor of each chain. the ring has
   // NUM elements.
   struct virtq_avail *avail;
 
-  // finally a ring in which the device writes descriptor numbers that
+  // a ring in which the device writes descriptor numbers that
   // the device has finished processing (just the head of each chain).
   // there are NUM used ring entries.
   struct virtq_used *used;