• Home
  • Raw
  • Download

Lines Matching refs:depth

187 		int depth = path->p_depth;  in ext4_ext_find_goal()  local
207 ex = path[depth].p_ext; in ext4_ext_find_goal()
220 if (path[depth].p_bh) in ext4_ext_find_goal()
221 return path[depth].p_bh->b_blocknr; in ext4_ext_find_goal()
360 ext4_ext_max_entries(struct inode *inode, int depth) in ext4_ext_max_entries() argument
364 if (depth == ext_depth(inode)) { in ext4_ext_max_entries()
365 if (depth == 0) in ext4_ext_max_entries()
370 if (depth == 0) in ext4_ext_max_entries()
405 int depth) in ext4_valid_extent_entries() argument
413 if (depth == 0) { in ext4_valid_extent_entries()
451 int depth, ext4_fsblk_t pblk) in __ext4_ext_check() argument
460 if (unlikely(le16_to_cpu(eh->eh_depth) != depth)) { in __ext4_ext_check()
468 max = ext4_ext_max_entries(inode, depth); in __ext4_ext_check()
477 if (!ext4_valid_extent_entries(inode, eh, depth)) { in __ext4_ext_check()
481 if (unlikely(depth > 32)) { in __ext4_ext_check()
486 if (ext_depth(inode) != depth && in __ext4_ext_check()
501 max, le16_to_cpu(eh->eh_depth), depth); in __ext4_ext_check()
505 #define ext4_ext_check(inode, eh, depth, pblk) \ argument
506 __ext4_ext_check(__func__, __LINE__, (inode), (eh), (depth), (pblk))
515 struct inode *inode, ext4_fsblk_t pblk, int depth, in __read_extent_tree_block() argument
534 ext_block_hdr(bh), depth, pblk); in __read_extent_tree_block()
541 if (!(flags & EXT4_EX_NOCACHE) && depth == 0) { in __read_extent_tree_block()
571 #define read_extent_tree_block(inode, pblk, depth, flags) \ argument
573 (depth), (flags))
584 int i = 0, depth, ret = 0; in ext4_ext_precache() local
590 depth = ext_depth(inode); in ext4_ext_precache()
592 path = kzalloc(sizeof(struct ext4_ext_path) * (depth + 1), in ext4_ext_precache()
600 if (depth == 0) in ext4_ext_precache()
603 ret = ext4_ext_check(inode, path[0].p_hdr, depth, 0); in ext4_ext_precache()
612 if ((i == depth) || in ext4_ext_precache()
621 depth - i - 1, in ext4_ext_precache()
664 int depth = ext_depth(inode); in ext4_ext_show_leaf() local
672 eh = path[depth].p_hdr; in ext4_ext_show_leaf()
688 int depth = ext_depth(inode); in ext4_ext_show_move() local
691 if (depth != level) { in ext4_ext_show_move()
705 ex = path[depth].p_ext; in ext4_ext_show_move()
706 while (ex <= EXT_MAX_EXTENT(path[depth].p_hdr)) { in ext4_ext_show_move()
725 int depth, i; in ext4_ext_drop_refs() local
729 depth = path->p_depth; in ext4_ext_drop_refs()
730 for (i = 0; i <= depth; i++, path++) in ext4_ext_drop_refs()
879 short int depth, i, ppos = 0; in ext4_find_extent() local
883 depth = ext_depth(inode); in ext4_find_extent()
887 if (depth > path[0].p_maxdepth) { in ext4_find_extent()
894 path = kzalloc(sizeof(struct ext4_ext_path) * (depth + 2), in ext4_find_extent()
898 path[0].p_maxdepth = depth + 1; in ext4_find_extent()
903 i = depth; in ext4_find_extent()
1036 int depth = ext_depth(inode); in ext4_ext_split() local
1050 if (unlikely(path[depth].p_ext > EXT_MAX_EXTENT(path[depth].p_hdr))) { in ext4_ext_split()
1054 if (path[depth].p_ext != EXT_MAX_EXTENT(path[depth].p_hdr)) { in ext4_ext_split()
1055 border = path[depth].p_ext[1].ee_block; in ext4_ext_split()
1078 ablocks = kzalloc(sizeof(ext4_fsblk_t) * depth, GFP_NOFS); in ext4_ext_split()
1083 ext_debug("allocate %d blocks for indexes/leaf\n", depth - at); in ext4_ext_split()
1084 for (a = 0; a < depth - at; a++) { in ext4_ext_split()
1117 if (unlikely(path[depth].p_hdr->eh_entries != in ext4_ext_split()
1118 path[depth].p_hdr->eh_max)) { in ext4_ext_split()
1120 path[depth].p_hdr->eh_entries, in ext4_ext_split()
1121 path[depth].p_hdr->eh_max); in ext4_ext_split()
1126 m = EXT_MAX_EXTENT(path[depth].p_hdr) - path[depth].p_ext++; in ext4_ext_split()
1127 ext4_ext_show_move(inode, path, newblock, depth); in ext4_ext_split()
1131 memmove(ex, path[depth].p_ext, sizeof(struct ext4_extent) * m); in ext4_ext_split()
1147 err = ext4_ext_get_access(handle, inode, path + depth); in ext4_ext_split()
1150 le16_add_cpu(&path[depth].p_hdr->eh_entries, -m); in ext4_ext_split()
1151 err = ext4_ext_dirty(handle, inode, path + depth); in ext4_ext_split()
1158 k = depth - at - 1; in ext4_ext_split()
1168 i = depth - 1; in ext4_ext_split()
1187 neh->eh_depth = cpu_to_le16(depth - i); in ext4_ext_split()
1251 for (i = 0; i < depth; i++) { in ext4_ext_split()
1361 int depth, i, err = 0; in ext4_ext_create_new_leaf() local
1364 i = depth = ext_depth(inode); in ext4_ext_create_new_leaf()
1367 curp = path + depth; in ext4_ext_create_new_leaf()
1407 depth = ext_depth(inode); in ext4_ext_create_new_leaf()
1408 if (path[depth].p_hdr->eh_entries == path[depth].p_hdr->eh_max) { in ext4_ext_create_new_leaf()
1431 int depth, ee_len; in ext4_ext_search_left() local
1437 depth = path->p_depth; in ext4_ext_search_left()
1440 if (depth == 0 && path->p_ext == NULL) in ext4_ext_search_left()
1447 ex = path[depth].p_ext; in ext4_ext_search_left()
1450 if (unlikely(EXT_FIRST_EXTENT(path[depth].p_hdr) != ex)) { in ext4_ext_search_left()
1456 while (--depth >= 0) { in ext4_ext_search_left()
1457 ix = path[depth].p_idx; in ext4_ext_search_left()
1458 if (unlikely(ix != EXT_FIRST_INDEX(path[depth].p_hdr))) { in ext4_ext_search_left()
1462 EXT_FIRST_INDEX(path[depth].p_hdr) != NULL ? in ext4_ext_search_left()
1463 le32_to_cpu(EXT_FIRST_INDEX(path[depth].p_hdr)->ei_block) : 0, in ext4_ext_search_left()
1464 depth); in ext4_ext_search_left()
1500 int depth; /* Note, NOT eh_depth; depth from top of tree */ in ext4_ext_search_right() local
1507 depth = path->p_depth; in ext4_ext_search_right()
1510 if (depth == 0 && path->p_ext == NULL) in ext4_ext_search_right()
1517 ex = path[depth].p_ext; in ext4_ext_search_right()
1520 if (unlikely(EXT_FIRST_EXTENT(path[depth].p_hdr) != ex)) { in ext4_ext_search_right()
1523 depth); in ext4_ext_search_right()
1526 while (--depth >= 0) { in ext4_ext_search_right()
1527 ix = path[depth].p_idx; in ext4_ext_search_right()
1528 if (unlikely(ix != EXT_FIRST_INDEX(path[depth].p_hdr))) { in ext4_ext_search_right()
1545 if (ex != EXT_LAST_EXTENT(path[depth].p_hdr)) { in ext4_ext_search_right()
1552 while (--depth >= 0) { in ext4_ext_search_right()
1553 ix = path[depth].p_idx; in ext4_ext_search_right()
1554 if (ix != EXT_LAST_INDEX(path[depth].p_hdr)) in ext4_ext_search_right()
1567 while (++depth < path->p_depth) { in ext4_ext_search_right()
1570 path->p_depth - depth, 0); in ext4_ext_search_right()
1579 bh = read_extent_tree_block(inode, block, path->p_depth - depth, 0); in ext4_ext_search_right()
1603 int depth; in ext4_ext_next_allocated_block() local
1606 depth = path->p_depth; in ext4_ext_next_allocated_block()
1608 if (depth == 0 && path->p_ext == NULL) in ext4_ext_next_allocated_block()
1611 while (depth >= 0) { in ext4_ext_next_allocated_block()
1612 if (depth == path->p_depth) { in ext4_ext_next_allocated_block()
1614 if (path[depth].p_ext && in ext4_ext_next_allocated_block()
1615 path[depth].p_ext != in ext4_ext_next_allocated_block()
1616 EXT_LAST_EXTENT(path[depth].p_hdr)) in ext4_ext_next_allocated_block()
1617 return le32_to_cpu(path[depth].p_ext[1].ee_block); in ext4_ext_next_allocated_block()
1620 if (path[depth].p_idx != in ext4_ext_next_allocated_block()
1621 EXT_LAST_INDEX(path[depth].p_hdr)) in ext4_ext_next_allocated_block()
1622 return le32_to_cpu(path[depth].p_idx[1].ei_block); in ext4_ext_next_allocated_block()
1624 depth--; in ext4_ext_next_allocated_block()
1636 int depth; in ext4_ext_next_leaf_block() local
1639 depth = path->p_depth; in ext4_ext_next_leaf_block()
1642 if (depth == 0) in ext4_ext_next_leaf_block()
1646 depth--; in ext4_ext_next_leaf_block()
1648 while (depth >= 0) { in ext4_ext_next_leaf_block()
1649 if (path[depth].p_idx != in ext4_ext_next_leaf_block()
1650 EXT_LAST_INDEX(path[depth].p_hdr)) in ext4_ext_next_leaf_block()
1652 le32_to_cpu(path[depth].p_idx[1].ei_block); in ext4_ext_next_leaf_block()
1653 depth--; in ext4_ext_next_leaf_block()
1669 int depth = ext_depth(inode); in ext4_ext_correct_indexes() local
1674 eh = path[depth].p_hdr; in ext4_ext_correct_indexes()
1675 ex = path[depth].p_ext; in ext4_ext_correct_indexes()
1683 if (depth == 0) { in ext4_ext_correct_indexes()
1696 k = depth - 1; in ext4_ext_correct_indexes()
1697 border = path[depth].p_ext->ee_block; in ext4_ext_correct_indexes()
1778 unsigned int depth, len; in ext4_ext_try_to_merge_right() local
1781 depth = ext_depth(inode); in ext4_ext_try_to_merge_right()
1782 BUG_ON(path[depth].p_hdr == NULL); in ext4_ext_try_to_merge_right()
1783 eh = path[depth].p_hdr; in ext4_ext_try_to_merge_right()
1864 unsigned int depth; in ext4_ext_try_to_merge() local
1867 depth = ext_depth(inode); in ext4_ext_try_to_merge()
1868 BUG_ON(path[depth].p_hdr == NULL); in ext4_ext_try_to_merge()
1869 eh = path[depth].p_hdr; in ext4_ext_try_to_merge()
1894 unsigned int depth, len1; in ext4_ext_check_overlap() local
1899 depth = ext_depth(inode); in ext4_ext_check_overlap()
1900 if (!path[depth].p_ext) in ext4_ext_check_overlap()
1902 b2 = EXT4_LBLK_CMASK(sbi, le32_to_cpu(path[depth].p_ext->ee_block)); in ext4_ext_check_overlap()
1946 int depth, len, err; in ext4_ext_insert_extent() local
1956 depth = ext_depth(inode); in ext4_ext_insert_extent()
1957 ex = path[depth].p_ext; in ext4_ext_insert_extent()
1958 eh = path[depth].p_hdr; in ext4_ext_insert_extent()
1959 if (unlikely(path[depth].p_hdr == NULL)) { in ext4_ext_insert_extent()
1960 EXT4_ERROR_INODE(inode, "path[%d].p_hdr == NULL", depth); in ext4_ext_insert_extent()
1997 path + depth); in ext4_ext_insert_extent()
2005 eh = path[depth].p_hdr; in ext4_ext_insert_extent()
2023 path + depth); in ext4_ext_insert_extent()
2034 eh = path[depth].p_hdr; in ext4_ext_insert_extent()
2040 depth = ext_depth(inode); in ext4_ext_insert_extent()
2041 eh = path[depth].p_hdr; in ext4_ext_insert_extent()
2057 eh = npath[depth].p_hdr; in ext4_ext_insert_extent()
2078 depth = ext_depth(inode); in ext4_ext_insert_extent()
2079 eh = path[depth].p_hdr; in ext4_ext_insert_extent()
2082 nearex = path[depth].p_ext; in ext4_ext_insert_extent()
2084 err = ext4_ext_get_access(handle, inode, path + depth); in ext4_ext_insert_extent()
2134 path[depth].p_ext = nearex; in ext4_ext_insert_extent()
2167 int exists, depth = 0, err = 0; in ext4_fill_fiemap_extents() local
2184 depth = ext_depth(inode); in ext4_fill_fiemap_extents()
2185 if (unlikely(path[depth].p_hdr == NULL)) { in ext4_fill_fiemap_extents()
2187 EXT4_ERROR_INODE(inode, "path[%d].p_hdr == NULL", depth); in ext4_fill_fiemap_extents()
2191 ex = path[depth].p_ext; in ext4_fill_fiemap_extents()
2324 int depth = ext_depth(inode); in ext4_ext_determine_hole() local
2328 ex = path[depth].p_ext; in ext4_ext_determine_hole()
2378 struct ext4_ext_path *path, int depth) in ext4_ext_rm_idx() argument
2384 depth--; in ext4_ext_rm_idx()
2385 path = path + depth; in ext4_ext_rm_idx()
2411 while (--depth >= 0) { in ext4_ext_rm_idx()
2437 int depth = ext_depth(inode); in ext4_ext_calc_credits_for_single_extent() local
2441 if (le16_to_cpu(path[depth].p_hdr->eh_entries) in ext4_ext_calc_credits_for_single_extent()
2442 < le16_to_cpu(path[depth].p_hdr->eh_max)) { in ext4_ext_calc_credits_for_single_extent()
2473 int depth; in ext4_ext_index_trans_blocks() local
2479 depth = ext_depth(inode); in ext4_ext_index_trans_blocks()
2482 index = depth * 2; in ext4_ext_index_trans_blocks()
2484 index = depth * 3; in ext4_ext_index_trans_blocks()
2621 int depth = ext_depth(inode), credits; in ext4_ext_rm_leaf() local
2633 if (!path[depth].p_hdr) in ext4_ext_rm_leaf()
2634 path[depth].p_hdr = ext_block_hdr(path[depth].p_bh); in ext4_ext_rm_leaf()
2635 eh = path[depth].p_hdr; in ext4_ext_rm_leaf()
2636 if (unlikely(path[depth].p_hdr == NULL)) { in ext4_ext_rm_leaf()
2637 EXT4_ERROR_INODE(inode, "path[%d].p_hdr == NULL", depth); in ext4_ext_rm_leaf()
2641 ex = path[depth].p_ext; in ext4_ext_rm_leaf()
2660 path[depth].p_ext = ex; in ext4_ext_rm_leaf()
2718 err = ext4_ext_get_access(handle, inode, path + depth); in ext4_ext_rm_leaf()
2759 err = ext4_ext_dirty(handle, inode, path + depth); in ext4_ext_rm_leaf()
2793 if (err == 0 && eh->eh_entries == 0 && path[depth].p_bh != NULL) in ext4_ext_rm_leaf()
2794 err = ext4_ext_rm_idx(handle, inode, path, depth); in ext4_ext_rm_leaf()
2825 int depth = ext_depth(inode); in ext4_ext_remove_space() local
2834 handle = ext4_journal_start(inode, EXT4_HT_TRUNCATE, depth + 1); in ext4_ext_remove_space()
2839 trace_ext4_ext_remove_space(inode, start, end, depth); in ext4_ext_remove_space()
2859 depth = ext_depth(inode); in ext4_ext_remove_space()
2861 ex = path[depth].p_ext; in ext4_ext_remove_space()
2863 if (depth) { in ext4_ext_remove_space()
2866 depth); in ext4_ext_remove_space()
2928 depth = ext_depth(inode); in ext4_ext_remove_space()
2930 int k = i = depth; in ext4_ext_remove_space()
2935 path = kzalloc(sizeof(struct ext4_ext_path) * (depth + 1), in ext4_ext_remove_space()
2941 path[0].p_maxdepth = path[0].p_depth = depth; in ext4_ext_remove_space()
2945 if (ext4_ext_check(inode, path[0].p_hdr, depth, 0)) { in ext4_ext_remove_space()
2953 if (i == depth) { in ext4_ext_remove_space()
2993 ext4_idx_pblock(path[i].p_idx), depth - i - 1, in ext4_ext_remove_space()
3003 if (WARN_ON(i + 1 > depth)) { in ext4_ext_remove_space()
3029 trace_ext4_ext_remove_space_done(inode, start, end, depth, in ext4_ext_remove_space()
3184 unsigned int ee_len, depth; in ext4_split_extent_at() local
3195 depth = ext_depth(inode); in ext4_split_extent_at()
3196 ex = path[depth].p_ext; in ext4_split_extent_at()
3207 err = ext4_ext_get_access(handle, inode, path + depth); in ext4_split_extent_at()
3239 err = ext4_ext_dirty(handle, inode, path + depth); in ext4_split_extent_at()
3324 unsigned int ee_len, depth; in ext4_split_extent() local
3330 depth = ext_depth(inode); in ext4_split_extent()
3331 ex = path[depth].p_ext; in ext4_split_extent()
3358 depth = ext_depth(inode); in ext4_split_extent()
3359 ex = path[depth].p_ext; in ext4_split_extent()
3419 unsigned int ee_len, depth, map_len = map->m_len; in ext4_ext_convert_to_initialized() local
3434 depth = ext_depth(inode); in ext4_ext_convert_to_initialized()
3435 eh = path[depth].p_hdr; in ext4_ext_convert_to_initialized()
3436 ex = path[depth].p_ext; in ext4_ext_convert_to_initialized()
3490 err = ext4_ext_get_access(handle, inode, path + depth); in ext4_ext_convert_to_initialized()
3536 err = ext4_ext_get_access(handle, inode, path + depth); in ext4_ext_convert_to_initialized()
3558 ext4_ext_dirty(handle, inode, path + depth); in ext4_ext_convert_to_initialized()
3561 path[depth].p_ext = abut_ex; in ext4_ext_convert_to_initialized()
3679 int split_flag = 0, depth; in ext4_split_convert_extents() local
3693 depth = ext_depth(inode); in ext4_split_convert_extents()
3694 ex = path[depth].p_ext; in ext4_split_convert_extents()
3720 int depth; in ext4_convert_unwritten_extents_endio() local
3723 depth = ext_depth(inode); in ext4_convert_unwritten_extents_endio()
3724 ex = path[depth].p_ext; in ext4_convert_unwritten_extents_endio()
3752 depth = ext_depth(inode); in ext4_convert_unwritten_extents_endio()
3753 ex = path[depth].p_ext; in ext4_convert_unwritten_extents_endio()
3756 err = ext4_ext_get_access(handle, inode, path + depth); in ext4_convert_unwritten_extents_endio()
3790 int i, depth; in check_eofblocks_fl() local
3797 depth = ext_depth(inode); in check_eofblocks_fl()
3798 eh = path[depth].p_hdr; in check_eofblocks_fl()
3827 for (i = depth-1; i >= 0; i--) in check_eofblocks_fl()
3953 int depth; in convert_initialized_extent() local
3963 depth = ext_depth(inode); in convert_initialized_extent()
3964 ex = path[depth].p_ext; in convert_initialized_extent()
3980 depth = ext_depth(inode); in convert_initialized_extent()
3981 ex = path[depth].p_ext; in convert_initialized_extent()
3989 err = ext4_ext_get_access(handle, inode, path + depth); in convert_initialized_extent()
4288 int free_on_err = 0, err = 0, depth, ret; in ext4_ext_map_blocks() local
4307 depth = ext_depth(inode); in ext4_ext_map_blocks()
4314 if (unlikely(path[depth].p_ext == NULL && depth != 0)) { in ext4_ext_map_blocks()
4317 (unsigned long) map->m_lblk, depth, in ext4_ext_map_blocks()
4318 path[depth].p_block); in ext4_ext_map_blocks()
4323 ex = path[depth].p_ext; in ext4_ext_map_blocks()
4671 int depth = 0; in ext4_alloc_file_blocks() local
4691 depth = ext_depth(inode); in ext4_alloc_file_blocks()
4698 if (depth >= 0 && depth != ext_depth(inode)) { in ext4_alloc_file_blocks()
4700 depth = ext_depth(inode); in ext4_alloc_file_blocks()
5256 int depth, err = 0; in ext4_ext_shift_path_extents() local
5259 depth = path->p_depth; in ext4_ext_shift_path_extents()
5261 while (depth >= 0) { in ext4_ext_shift_path_extents()
5262 if (depth == path->p_depth) { in ext4_ext_shift_path_extents()
5263 ex_start = path[depth].p_ext; in ext4_ext_shift_path_extents()
5267 ex_last = EXT_LAST_EXTENT(path[depth].p_hdr); in ext4_ext_shift_path_extents()
5269 err = ext4_access_path(handle, inode, path + depth); in ext4_ext_shift_path_extents()
5273 if (ex_start == EXT_FIRST_EXTENT(path[depth].p_hdr)) in ext4_ext_shift_path_extents()
5282 EXT_FIRST_EXTENT(path[depth].p_hdr)) in ext4_ext_shift_path_extents()
5296 err = ext4_ext_dirty(handle, inode, path + depth); in ext4_ext_shift_path_extents()
5300 if (--depth < 0 || !update) in ext4_ext_shift_path_extents()
5305 err = ext4_access_path(handle, inode, path + depth); in ext4_ext_shift_path_extents()
5310 le32_add_cpu(&path[depth].p_idx->ei_block, -shift); in ext4_ext_shift_path_extents()
5312 le32_add_cpu(&path[depth].p_idx->ei_block, shift); in ext4_ext_shift_path_extents()
5313 err = ext4_ext_dirty(handle, inode, path + depth); in ext4_ext_shift_path_extents()
5318 if (path[depth].p_idx != EXT_FIRST_INDEX(path[depth].p_hdr)) in ext4_ext_shift_path_extents()
5321 depth--; in ext4_ext_shift_path_extents()
5341 int ret = 0, depth; in ext4_ext_shift_extents() local
5351 depth = path->p_depth; in ext4_ext_shift_extents()
5352 extent = path[depth].p_ext; in ext4_ext_shift_extents()
5367 depth = path->p_depth; in ext4_ext_shift_extents()
5368 extent = path[depth].p_ext; in ext4_ext_shift_extents()
5406 depth = path->p_depth; in ext4_ext_shift_extents()
5407 extent = path[depth].p_ext; in ext4_ext_shift_extents()
5416 if (extent < EXT_LAST_EXTENT(path[depth].p_hdr)) { in ext4_ext_shift_extents()
5417 path[depth].p_ext++; in ext4_ext_shift_extents()
5425 extent = EXT_LAST_EXTENT(path[depth].p_hdr); in ext4_ext_shift_extents()
5429 extent = EXT_FIRST_EXTENT(path[depth].p_hdr); in ext4_ext_shift_extents()
5438 path[depth].p_ext = extent; in ext4_ext_shift_extents()
5609 int ret = 0, depth, split_flag = 0; in ext4_insert_range() local
5704 depth = ext_depth(inode); in ext4_insert_range()
5705 extent = path[depth].p_ext; in ext4_insert_range()