diff options
-rw-r--r-- | bio.c | 2 | ||||
-rw-r--r-- | fs.c | 2 | ||||
-rw-r--r-- | log.c | 4 |
3 files changed, 5 insertions, 3 deletions
@@ -99,7 +99,7 @@ bread(uint dev, uint blockno) struct buf *b; b = bget(dev, blockno); - if(!(b->flags & B_VALID)) { + if((b->flags & B_VALID) == 0) { iderw(b); } return b; @@ -190,7 +190,7 @@ static struct inode* iget(uint dev, uint inum); //PAGEBREAK! // Allocate an inode on device dev. -// Give it type type. +// Mark it as allocated by giving it type type. // Returns an unlocked but allocated and referenced inode. struct inode* ialloc(uint dev, short type) @@ -155,7 +155,9 @@ end_op(void) do_commit = 1; log.committing = 1; } else { - // begin_op() may be waiting for log space. + // begin_op() may be waiting for log space, + // and decrementing log.outstanding has decreased + // the amount of reserved space. wakeup(&log); } release(&log.lock); |