diff --git a/servers/mfs/stats.c b/servers/mfs/stats.c index 0191c3f60..f48fee317 100644 --- a/servers/mfs/stats.c +++ b/servers/mfs/stats.c @@ -1,6 +1,7 @@ #include "fs.h" #include #include +#include #include #include "buf.h" #include "inode.h" @@ -50,6 +51,7 @@ int map; /* IMAP (inode map) or ZMAP (zone map) */ bcount = bit_blocks; do { bp = get_block(sp->s_dev, start_block + block, NORMAL); + assert(bp); wlim = &bp->b_bitmap[FS_BITMAP_CHUNKS(sp->s_block_size)]; /* Iterate over the words in block. */ @@ -78,6 +80,7 @@ int map; /* IMAP (inode map) or ZMAP (zone map) */ if (b >= map_bits) break; } + put_block(bp, MAP_BLOCK); ++block; word = 0; } while (--bcount > 0);