Lines Matching refs:fs
61 errcode_t ext2fs_image_inode_write(ext2_filsys fs, int fd, int flags) in ext2fs_image_inode_write() argument
70 buf = malloc(fs->blocksize * BUF_BLOCKS); in ext2fs_image_inode_write()
74 for (group = 0; group < fs->group_desc_count; group++) { in ext2fs_image_inode_write()
75 blk = ext2fs_inode_table_loc(fs, (unsigned)group); in ext2fs_image_inode_write()
80 left = fs->inode_blocks_per_group; in ext2fs_image_inode_write()
85 retval = io_channel_read_blk64(fs->io, blk, c, buf); in ext2fs_image_inode_write()
95 if (check_zero_block(cp, fs->blocksize)) { in ext2fs_image_inode_write()
99 cp += fs->blocksize; in ext2fs_image_inode_write()
100 r = lseek(fd, fs->blocksize, SEEK_CUR); in ext2fs_image_inode_write()
109 if (check_zero_block(cp + d*fs->blocksize, fs->blocksize)) in ext2fs_image_inode_write()
113 actual = write(fd, cp, fs->blocksize * d); in ext2fs_image_inode_write()
118 if (actual != (ssize_t) (fs->blocksize * d)) { in ext2fs_image_inode_write()
124 cp += fs->blocksize * d; in ext2fs_image_inode_write()
139 errcode_t ext2fs_image_inode_read(ext2_filsys fs, int fd, in ext2fs_image_inode_read() argument
148 buf = malloc(fs->blocksize * BUF_BLOCKS); in ext2fs_image_inode_read()
152 for (group = 0; group < fs->group_desc_count; group++) { in ext2fs_image_inode_read()
153 blk = ext2fs_inode_table_loc(fs, (unsigned)group); in ext2fs_image_inode_read()
158 left = fs->inode_blocks_per_group; in ext2fs_image_inode_read()
163 actual = read(fd, buf, fs->blocksize * c); in ext2fs_image_inode_read()
168 if (actual != (ssize_t) (fs->blocksize * c)) { in ext2fs_image_inode_read()
172 retval = io_channel_write_blk64(fs->io, blk, c, buf); in ext2fs_image_inode_read()
180 retval = ext2fs_flush_icache(fs); in ext2fs_image_inode_read()
190 errcode_t ext2fs_image_super_write(ext2_filsys fs, int fd, in ext2fs_image_super_write() argument
197 buf = malloc(fs->blocksize); in ext2fs_image_super_write()
204 memset(buf, 0, fs->blocksize); in ext2fs_image_super_write()
205 memcpy(buf, fs->super, SUPERBLOCK_SIZE); in ext2fs_image_super_write()
206 actual = write(fd, buf, fs->blocksize); in ext2fs_image_super_write()
211 if (actual != (ssize_t) fs->blocksize) { in ext2fs_image_super_write()
219 cp = (char *) fs->group_desc; in ext2fs_image_super_write()
220 actual = write(fd, cp, fs->blocksize * fs->desc_blocks); in ext2fs_image_super_write()
225 if (actual != (ssize_t) (fs->blocksize * fs->desc_blocks)) { in ext2fs_image_super_write()
240 errcode_t ext2fs_image_super_read(ext2_filsys fs, int fd, in ext2fs_image_super_read() argument
247 size = fs->blocksize * (fs->group_desc_count + 1); in ext2fs_image_super_read()
268 memcpy(fs->super, buf, SUPERBLOCK_SIZE); in ext2fs_image_super_read()
270 memcpy(fs->group_desc, buf + fs->blocksize, in ext2fs_image_super_read()
271 fs->blocksize * fs->group_desc_count); in ext2fs_image_super_read()
283 errcode_t ext2fs_image_bitmap_write(ext2_filsys fs, int fd, int flags) in ext2fs_image_bitmap_write() argument
293 if (!fs->inode_map) { in ext2fs_image_bitmap_write()
294 retval = ext2fs_read_inode_bitmap(fs); in ext2fs_image_bitmap_write()
298 bmap = fs->inode_map; in ext2fs_image_bitmap_write()
300 cnt = EXT2_INODES_PER_GROUP(fs->super) * fs->group_desc_count; in ext2fs_image_bitmap_write()
301 size = (EXT2_INODES_PER_GROUP(fs->super) / 8); in ext2fs_image_bitmap_write()
303 if (!fs->block_map) { in ext2fs_image_bitmap_write()
304 retval = ext2fs_read_block_bitmap(fs); in ext2fs_image_bitmap_write()
308 bmap = fs->block_map; in ext2fs_image_bitmap_write()
309 itr = fs->super->s_first_data_block; in ext2fs_image_bitmap_write()
310 cnt = EXT2_BLOCKS_PER_GROUP(fs->super) * fs->group_desc_count; in ext2fs_image_bitmap_write()
311 size = EXT2_BLOCKS_PER_GROUP(fs->super) / 8; in ext2fs_image_bitmap_write()
313 total_size = size * fs->group_desc_count; in ext2fs_image_bitmap_write()
335 size = total_size % fs->blocksize; in ext2fs_image_bitmap_write()
338 size = fs->blocksize - size; in ext2fs_image_bitmap_write()
358 errcode_t ext2fs_image_bitmap_read(ext2_filsys fs, int fd, int flags) in ext2fs_image_bitmap_read() argument
368 if (!fs->inode_map) { in ext2fs_image_bitmap_read()
369 retval = ext2fs_read_inode_bitmap(fs); in ext2fs_image_bitmap_read()
373 bmap = fs->inode_map; in ext2fs_image_bitmap_read()
375 cnt = EXT2_INODES_PER_GROUP(fs->super) * fs->group_desc_count; in ext2fs_image_bitmap_read()
376 size = (EXT2_INODES_PER_GROUP(fs->super) / 8); in ext2fs_image_bitmap_read()
378 if (!fs->block_map) { in ext2fs_image_bitmap_read()
379 retval = ext2fs_read_block_bitmap(fs); in ext2fs_image_bitmap_read()
383 bmap = fs->block_map; in ext2fs_image_bitmap_read()
384 itr = fs->super->s_first_data_block; in ext2fs_image_bitmap_read()
385 cnt = EXT2_BLOCKS_PER_GROUP(fs->super) * fs->group_desc_count; in ext2fs_image_bitmap_read()
386 size = EXT2_BLOCKS_PER_GROUP(fs->super) / 8; in ext2fs_image_bitmap_read()