Lines Matching defs:fs
166 return ext2_read_blocks(bh->bc->fs, bh->data, bh->block, 1);
177 ext2_write_blocks(bh->bc->fs, bh->data, bh->block, 1);
231 void ext2_bcache_deinit(struct ext2_fs *fs)
233 ext2_bcache_sync(fs);
234 free(fs->bc->buffermem);
235 free(fs->bc->hash);
236 free(fs->bc->heads);
237 free(fs->bc);
239 if (fs->opt_verbose)
247 void ext2_bcache_dump(struct ext2_fs *fs)
254 if (fs->bc->hash[i] != NULL)
261 a = b = fs->bc->hash[i];
272 int ext2_bcache_flush(struct ext2_fs *fs, blk_t block)
276 if ((bh = ext2_bh_find(fs->bc, block)) == NULL)
295 int ext2_bcache_flush_range(struct ext2_fs *fs, blk_t block, blk_t num)
300 if (!ext2_bcache_flush(fs, block))
306 int ext2_bcache_init(struct ext2_fs *fs)
312 size = ext2_buffer_cache_pool_size >> (fs->logsize - 10);
336 bc->fs = fs;
342 bc->heads[i].data = bc->buffermem + (i << fs->logsize);
350 fs->bc = bc;
355 int ext2_bcache_sync(struct ext2_fs *fs)
359 for (i=0;i<fs->bc->size;i++)
363 bh = &fs->bc->heads[i];
380 struct ext2_buffer_head *ext2_bcreate(struct ext2_fs *fs, blk_t block)
384 if ((bh = ext2_bh_find(fs->bc, block)) != NULL)
390 bh = ext2_bh_alloc(fs->bc, block);
394 memset(bh->data, 0, fs->blocksize);
400 struct ext2_buffer_head *ext2_bread(struct ext2_fs *fs, blk_t block)
404 if ((bh = fs->bc->cache)->block == block)
411 if ((bh = ext2_bh_find(fs->bc, block)) != NULL)
413 fs->bc->cache = bh;
421 bh = ext2_bh_alloc(fs->bc, block);
422 fs->bc->cache = bh;