Home | History | Annotate | Download | only in ext4_utils

Lines Matching defs:block_list

352 static int get_direct_blocks(struct ext4_inode *inode, unsigned long long *block_list,
361 block_list[i] = inode->i_block[i];
375 unsigned long long *block_list, unsigned int *count)
391 block_list[EXT4_NDIR_BLOCKS+i] = indirect_block[i];
401 static int get_block_list_indirect(int fd, struct ext4_inode *inode, unsigned long long *block_list)
405 if (get_direct_blocks(inode, block_list, &count)) {
406 get_indirect_blocks(fd, inode, block_list, &count);
412 static int get_extent_ents(struct ext4_extent_header *ext_hdr, unsigned long long *block_list)
430 block_list[extent->ee_block+j] = fs_block_num+j;
438 static int get_extent_idx(int fd, struct ext4_extent_header *ext_hdr, unsigned long long *block_list)
462 get_extent_ents(tmp_ext_hdr, block_list); /* leaf node, fill in block_list */
464 get_extent_idx(fd, tmp_ext_hdr, block_list); /* recurse down the tree */
471 static int get_block_list_extents(int fd, struct ext4_inode *inode, unsigned long long *block_list)
483 get_extent_ents((struct ext4_extent_header *)inode->i_block, block_list);
487 get_extent_idx(fd, (struct ext4_extent_header *)inode->i_block, block_list);
522 unsigned long long *block_list;
547 block_list = malloc((num_blocks + 1) * sizeof(*block_list));
548 if (block_list == 0) {
549 critical_error("failed to allocate memory for block_list\n");
553 get_block_list_extents(fd, inode, block_list);
567 get_block_list_indirect(fd, inode, block_list);
572 read_block(fd, block_list[i], dirbuf + (i * info.block_size));
669 write_block(fd, block_list[i], dirbuf + (i * info.block_size));
675 free(block_list);