Lines Matching full:blocks
53 * data blocks at leaves and indirect blocks in intermediate nodes.
60 * we need to know is the capacity of indirect blocks (taken from the
68 * if our filesystem had 8Kb blocks. We might use long long, but that would
115 * ext4_get_branch - read the chain of indirect blocks leading to data
118 * @offsets: offsets of pointers in inode/indirect blocks
138 * or when it reads all @depth-1 indirect blocks successfully and finds
267 * of direct blocks need to be allocated for the given branch.
269 * @branch: chain of indirect blocks
270 * @k: number of blocks need for indirect blocks
271 * @blks: number of data blocks to be mapped.
274 * return the total number of blocks to be allocate, including the
275 * direct and indirect blocks.
284 * then it's clear blocks on that path have not allocated in ext4_blks_to_allocate()
304 * ext4_alloc_branch() - allocate and set up a chain of blocks
307 * @indirect_blks: number of allocated indirect blocks
308 * @offsets: offsets (in the blocks) to store the pointers to next.
311 * This function allocates blocks, zeroes out all but the last one,
323 * If allocation fails we free all blocks we've allocated (and forget
392 /* Free data blocks */ in ext4_alloc_branch()
400 * blocks. Buffer for new_blocks[i] is at branch[i+1].bh in ext4_alloc_branch()
403 * because blocks are freshly allocated, we don't need to in ext4_alloc_branch()
419 * @num: number of indirect blocks we are adding
451 * direct blocks blocks in ext4_splice_branch()
509 * to tree, set linkage between the newborn blocks, write them if sync is
512 * removals - all blocks on the path are immune now) and possibly force the
515 * allocations is needed - we simply release blocks and do not touch anything
520 * return > 0, # of blocks mapped or allocated.
526 * blocks (i.e., flags has EXT4_GET_BLOCKS_CREATE set) or
528 * blocks.
560 /*map more blocks*/ in ext4_ind_map_blocks()
580 * Count number blocks in a subtree under 'partial'. At each in ext4_ind_map_blocks()
603 EXT4_ERROR_INODE(inode, "Can't allocate blocks for " in ext4_ind_map_blocks()
622 /* the number of blocks need to allocate for [d,t]indirect blocks */ in ext4_ind_map_blocks()
627 * direct blocks to allocate for this branch. in ext4_ind_map_blocks()
676 * Calculate number of indirect blocks touched by mapping @nrblocks logically
677 * contiguous blocks
682 * With N contiguous data blocks, we need at most in ext4_ind_trans_blocks()
683 * N/EXT4_ADDR_PER_BLOCK(inode->i_sb) + 1 indirect blocks, in ext4_ind_trans_blocks()
684 * 2 dindirect blocks, and 1 tindirect block in ext4_ind_trans_blocks()
705 * moment, get_block can be called only for blocks inside i_size since in ext4_ind_trunc_restart_fn()
763 * ext4_find_shared - find the indirect blocks for partial truncation.
767 * @chain: place to store the pointers to partial indirect blocks
773 * indirect blocks but leave the blocks themselves alive. Block is
785 * partially truncated blocks - in @chain[].bh and pointers to
851 * We release `count' blocks on disk, but (last - first) may be greater
875 "blocks %llu len %lu", in ext4_clear_blocks()
896 * ext4_free_data - free a list of data blocks
903 * We are freeing all blocks referred from that array (numbers are stored as
906 * We accumulate contiguous runs of blocks to free. Conveniently, if these
907 * blocks are contiguous then releasing them at one time will only affect one
908 * or two bitmap blocks (+ group descriptor(s) and superblock) and we won't
919 unsigned long count = 0; /* Number of blocks in the run */ in ext4_free_data()
933 * to the blocks, we can't free them. */ in ext4_free_data()
941 /* accumulate blocks to free if they're contiguous */ in ext4_free_data()
996 * We are freeing all blocks referred from these branches (numbers are
1062 * rather than leaking blocks. in ext4_free_branches()
1080 * transaction where the data blocks are in ext4_free_branches()
1107 BUFFER_TRACE(parent_bh, "free data blocks"); in ext4_free_branches()
1149 * It is unnecessary to free any data blocks if last_block is in ext4_ind_truncate()
1153 } else if (n == 1) { /* direct blocks */ in ext4_ind_truncate()
1179 /* Clear the ends of indirect blocks on the shared branch */ in ext4_ind_truncate()
1224 * Free the blocks in the defined range (end is exclusive endpoint of
1295 * Clear the ends of indirect blocks on the shared branch in ext4_ind_remove_space()
1329 * Clear the ends of indirect blocks on the shared branch in ext4_ind_remove_space()