diff --git a/Makefile b/Makefile index 7580ad5..88130e1 100644 --- a/Makefile +++ b/Makefile @@ -23,7 +23,6 @@ OBJS = \ $K/sleeplock.o \ $K/file.o \ $K/pipe.o \ - $K/ramdisk.o \ $K/exec.o \ $K/sysfile.o \ $K/kernelvec.o \ @@ -163,7 +162,6 @@ ifndef CPUS CPUS := 3 endif QEMUOPTS = -machine virt -kernel $K/kernel -m 3G -smp $(CPUS) -nographic -QEMUOPTS += -initrd fs.img QEMUOPTS += -drive file=fs.img,if=none,format=raw,id=x0 -device virtio-blk-device,drive=x0,bus=virtio-mmio-bus.0 qemu: $K/kernel fs.img diff --git a/kernel/bio.c b/kernel/bio.c index 07ea030..41e3d1f 100644 --- a/kernel/bio.c +++ b/kernel/bio.c @@ -101,7 +101,6 @@ bread(uint dev, uint blockno) b = bget(dev, blockno); if((b->flags & B_VALID) == 0) { - //ramdiskrw(b); virtio_disk_rw(b); } return b; @@ -114,7 +113,6 @@ bwrite(struct buf *b) if(!holdingsleep(&b->lock)) panic("bwrite"); b->flags |= B_DIRTY; - //ramdiskrw(b); virtio_disk_rw(b); } diff --git a/kernel/main.c b/kernel/main.c index d44c82c..f3c5ea6 100644 --- a/kernel/main.c +++ b/kernel/main.c @@ -27,7 +27,6 @@ main() binit(); // buffer cache fileinit(); // file table virtio_disk_init(); // emulated hard disk - ramdiskinit(); // in-memory disk userinit(); // first user process started = 1; } else { diff --git a/kernel/memlayout.h b/kernel/memlayout.h index 6d86166..e8c9aab 100644 --- a/kernel/memlayout.h +++ b/kernel/memlayout.h @@ -22,6 +22,7 @@ #define UART0 0x10000000L #define UART0_IRQ 10 +// virtio mmio interface #define VIRTIO 0x10001000 #define VIRTIO_IRQ 1 // really the first of 8 units diff --git a/kernel/vm.c b/kernel/vm.c index 0d0a9d9..b6ca85b 100644 --- a/kernel/vm.c +++ b/kernel/vm.c @@ -30,7 +30,7 @@ kvminit() mappages(kernel_pagetable, UART0, PGSIZE, UART0, PTE_R | PTE_W); - // virtio disk interface + // virtio mmio disk interface mappages(kernel_pagetable, VIRTIO, PGSIZE, VIRTIO, PTE_R | PTE_W); @@ -50,10 +50,6 @@ kvminit() mappages(kernel_pagetable, (uint64)etext, PHYSTOP-(uint64)etext, (uint64)etext, PTE_R | PTE_W); - // map the qemu -initrd fs.img ramdisk - mappages(kernel_pagetable, RAMDISK, FSSIZE * BSIZE, - RAMDISK, PTE_R | PTE_W); - // map the trampoline for trap entry/exit to // the highest virtual address in the kernel. mappages(kernel_pagetable, TRAMPOLINE, PGSIZE,