From 530431045237d7ccbbc0bb65ed83309845c19893 Mon Sep 17 00:00:00 2001 From: Frans Kaashoek Date: Mon, 29 Jul 2019 17:33:16 -0400 Subject: Remove B_DIRTY Use refcnt to pin blocks into the cache Replace flags/B_VALID with a boolean field valid Use info[id].status to signal completion of disk interrupt Pass a read/write flag to virtio_disk_rw --- kernel/defs.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'kernel/defs.h') diff --git a/kernel/defs.h b/kernel/defs.h index de4acfd..8421082 100644 --- a/kernel/defs.h +++ b/kernel/defs.h @@ -177,7 +177,7 @@ void plic_complete(int); // virtio_disk.c void virtio_disk_init(void); -void virtio_disk_rw(struct buf *); +void virtio_disk_rw(struct buf *, int); void virtio_disk_intr(); // number of elements in fixed-size array -- cgit v1.2.3 From f37a3e396454268074f48517e3773f099846d0e3 Mon Sep 17 00:00:00 2001 From: Frans Kaashoek Date: Tue, 30 Jul 2019 08:54:43 -0400 Subject: Make pin/unpin explicit --- kernel/defs.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'kernel/defs.h') diff --git a/kernel/defs.h b/kernel/defs.h index 8421082..2689bed 100644 --- a/kernel/defs.h +++ b/kernel/defs.h @@ -14,6 +14,8 @@ void binit(void); struct buf* bread(uint, uint); void brelse(struct buf*); void bwrite(struct buf*); +void bpin(struct buf*); +void bunpin(struct buf*); // console.c void consoleinit(void); -- cgit v1.2.3