Lines Matching refs:bh

58 	struct buffer_head *bh;  in ext4_append()  local
83 bh = ext4_bread(handle, inode, *block, EXT4_GET_BLOCKS_CREATE); in ext4_append()
84 if (IS_ERR(bh)) in ext4_append()
85 return bh; in ext4_append()
91 BUFFER_TRACE(bh, "get_write_access"); in ext4_append()
92 err = ext4_journal_get_write_access(handle, inode->i_sb, bh, in ext4_append()
96 return bh; in ext4_append()
99 brelse(bh); in ext4_append()
130 struct buffer_head *bh; in __ext4_read_dirblock() local
142 bh = ERR_PTR(-EIO); in __ext4_read_dirblock()
144 bh = ext4_bread(NULL, inode, block, 0); in __ext4_read_dirblock()
145 if (IS_ERR(bh)) { in __ext4_read_dirblock()
150 current->comm, bh); in __ext4_read_dirblock()
152 return bh; in __ext4_read_dirblock()
155 if (!bh && (type == INDEX || type == DIRENT_HTREE || block == 0)) { in __ext4_read_dirblock()
161 if (!bh) in __ext4_read_dirblock()
163 dirent = (struct ext4_dir_entry *) bh->b_data; in __ext4_read_dirblock()
176 brelse(bh); in __ext4_read_dirblock()
180 buffer_verified(bh)) in __ext4_read_dirblock()
181 return bh; in __ext4_read_dirblock()
191 set_buffer_verified(bh); in __ext4_read_dirblock()
196 brelse(bh); in __ext4_read_dirblock()
201 if (ext4_dirblock_csum_verify(inode, bh) && in __ext4_read_dirblock()
203 set_buffer_verified(bh); in __ext4_read_dirblock()
208 brelse(bh); in __ext4_read_dirblock()
212 return bh; in __ext4_read_dirblock()
274 struct buffer_head *bh; member
301 void ext4_initialize_dirent_tail(struct buffer_head *bh, in ext4_initialize_dirent_tail() argument
304 struct ext4_dir_entry_tail *t = EXT4_DIRENT_TAIL(bh->b_data, blocksize); in ext4_initialize_dirent_tail()
314 struct buffer_head *bh) in get_dirent_tail() argument
322 d = (struct ext4_dir_entry *)bh->b_data; in get_dirent_tail()
323 top = (struct ext4_dir_entry *)(bh->b_data + in get_dirent_tail()
334 t = EXT4_DIRENT_TAIL(bh->b_data, EXT4_BLOCK_SIZE(inode->i_sb)); in get_dirent_tail()
366 int ext4_dirblock_csum_verify(struct inode *inode, struct buffer_head *bh) in ext4_dirblock_csum_verify() argument
373 t = get_dirent_tail(inode, bh); in ext4_dirblock_csum_verify()
379 if (t->det_checksum != ext4_dirblock_csum(inode, bh->b_data, in ext4_dirblock_csum_verify()
380 (char *)t - bh->b_data)) in ext4_dirblock_csum_verify()
387 struct buffer_head *bh) in ext4_dirblock_csum_set() argument
394 t = get_dirent_tail(inode, bh); in ext4_dirblock_csum_set()
400 t->det_checksum = ext4_dirblock_csum(inode, bh->b_data, in ext4_dirblock_csum_set()
401 (char *)t - bh->b_data); in ext4_dirblock_csum_set()
406 struct buffer_head *bh) in ext4_handle_dirty_dirblock() argument
408 ext4_dirblock_csum_set(inode, bh); in ext4_handle_dirty_dirblock()
409 return ext4_handle_dirty_metadata(handle, inode, bh); in ext4_handle_dirty_dirblock()
516 struct buffer_head *bh) in ext4_handle_dirty_dx_node() argument
518 ext4_dx_csum_set(inode, (struct ext4_dir_entry *)bh->b_data); in ext4_handle_dirty_dx_node()
519 return ext4_handle_dirty_metadata(handle, inode, bh); in ext4_handle_dirty_dx_node()
716 struct buffer_head *bh; in dx_show_entries() local
725 bh = ext4_bread(NULL,dir, block, 0); in dx_show_entries()
726 if (IS_ERR_OR_NULL(bh)) in dx_show_entries()
729 dx_show_entries(hinfo, dir, ((struct dx_node *) bh->b_data)->entries, levels - 1): in dx_show_entries()
731 bh->b_data, blocksize, 0); in dx_show_entries()
735 brelse(bh); in dx_show_entries()
791 frame->bh = ext4_read_dirblock(dir, 0, INDEX); in dx_probe()
792 if (IS_ERR(frame->bh)) in dx_probe()
793 return (struct dx_frame *) frame->bh; in dx_probe()
795 root = (struct dx_root *) frame->bh->b_data; in dx_probe()
910 frame->bh = ext4_read_dirblock(dir, block, INDEX); in dx_probe()
911 if (IS_ERR(frame->bh)) { in dx_probe()
912 ret_err = (struct dx_frame *) frame->bh; in dx_probe()
913 frame->bh = NULL; in dx_probe()
917 entries = ((struct dx_node *) frame->bh->b_data)->entries; in dx_probe()
928 brelse(frame->bh); in dx_probe()
944 if (frames[0].bh == NULL) in dx_release()
947 info = &((struct dx_root *)frames[0].bh->b_data)->info; in dx_release()
951 if (frames[i].bh == NULL) in dx_release()
953 brelse(frames[i].bh); in dx_release()
954 frames[i].bh = NULL; in dx_release()
981 struct buffer_head *bh; in ext4_htree_next_block() local
1021 bh = ext4_read_dirblock(dir, dx_get_block(p->at), INDEX); in ext4_htree_next_block()
1022 if (IS_ERR(bh)) in ext4_htree_next_block()
1023 return PTR_ERR(bh); in ext4_htree_next_block()
1025 brelse(p->bh); in ext4_htree_next_block()
1026 p->bh = bh; in ext4_htree_next_block()
1027 p->at = p->entries = ((struct dx_node *) bh->b_data)->entries; in ext4_htree_next_block()
1043 struct buffer_head *bh; in htree_dirblock_to_tree() local
1051 bh = ext4_read_dirblock(dir, block, DIRENT_HTREE); in htree_dirblock_to_tree()
1052 if (IS_ERR(bh)) in htree_dirblock_to_tree()
1053 return PTR_ERR(bh); in htree_dirblock_to_tree()
1055 de = (struct ext4_dir_entry_2 *) bh->b_data; in htree_dirblock_to_tree()
1065 brelse(bh); in htree_dirblock_to_tree()
1071 brelse(bh); in htree_dirblock_to_tree()
1077 if (ext4_check_dir_entry(dir, NULL, de, bh, in htree_dirblock_to_tree()
1078 bh->b_data, bh->b_size, in htree_dirblock_to_tree()
1080 + ((char *)de - bh->b_data))) { in htree_dirblock_to_tree()
1137 brelse(bh); in htree_dirblock_to_tree()
1201 de = (struct ext4_dir_entry_2 *) frames[0].bh->b_data; in ext4_htree_fill_tree()
1211 de = (struct ext4_dir_entry_2 *) frames[0].bh->b_data; in ext4_htree_fill_tree()
1262 static inline int search_dirblock(struct buffer_head *bh, in search_dirblock() argument
1268 return ext4_search_dir(bh, bh->b_data, dir->i_sb->s_blocksize, dir, in search_dirblock()
1280 static int dx_make_map(struct inode *dir, struct buffer_head *bh, in dx_make_map() argument
1285 struct ext4_dir_entry_2 *de = (struct ext4_dir_entry_2 *)bh->b_data; in dx_make_map()
1286 unsigned int buflen = bh->b_size; in dx_make_map()
1287 char *base = bh->b_data; in dx_make_map()
1295 if (ext4_check_dir_entry(dir, NULL, de, bh, base, buflen, in dx_make_map()
1456 int ext4_search_dir(struct buffer_head *bh, char *search_buf, int buf_size, in ext4_search_dir() argument
1475 if (ext4_check_dir_entry(dir, NULL, de, bh, search_buf, in ext4_search_dir()
1526 struct buffer_head *bh, *ret = NULL; in __ext4_find_entry() local
1611 if ((bh = bh_use[ra_ptr++]) == NULL) in __ext4_find_entry()
1613 wait_on_buffer(bh); in __ext4_find_entry()
1614 if (!buffer_uptodate(bh)) { in __ext4_find_entry()
1618 brelse(bh); in __ext4_find_entry()
1622 if (!buffer_verified(bh) && in __ext4_find_entry()
1624 (struct ext4_dir_entry *)bh->b_data) && in __ext4_find_entry()
1625 !ext4_dirblock_csum_verify(dir, bh)) { in __ext4_find_entry()
1629 brelse(bh); in __ext4_find_entry()
1633 set_buffer_verified(bh); in __ext4_find_entry()
1634 i = search_dirblock(bh, dir, fname, in __ext4_find_entry()
1638 ret = bh; in __ext4_find_entry()
1641 brelse(bh); in __ext4_find_entry()
1677 struct buffer_head *bh; in ext4_find_entry() local
1685 bh = __ext4_find_entry(dir, &fname, res_dir, inlined); in ext4_find_entry()
1688 return bh; in ext4_find_entry()
1697 struct buffer_head *bh; in ext4_lookup_entry() local
1705 bh = __ext4_find_entry(dir, &fname, res_dir, NULL); in ext4_lookup_entry()
1708 return bh; in ext4_lookup_entry()
1716 struct buffer_head *bh; in ext4_dx_find_entry() local
1728 bh = ext4_read_dirblock(dir, block, DIRENT_HTREE); in ext4_dx_find_entry()
1729 if (IS_ERR(bh)) in ext4_dx_find_entry()
1732 retval = search_dirblock(bh, dir, fname, in ext4_dx_find_entry()
1736 brelse(bh); in ext4_dx_find_entry()
1738 bh = ERR_PTR(ERR_BAD_DX_DIR); in ext4_dx_find_entry()
1749 bh = ERR_PTR(retval); in ext4_dx_find_entry()
1754 bh = NULL; in ext4_dx_find_entry()
1759 return bh; in ext4_dx_find_entry()
1766 struct buffer_head *bh; in ext4_lookup() local
1771 bh = ext4_lookup_entry(dir, dentry, &de); in ext4_lookup()
1772 if (IS_ERR(bh)) in ext4_lookup()
1773 return ERR_CAST(bh); in ext4_lookup()
1775 if (bh) { in ext4_lookup()
1777 brelse(bh); in ext4_lookup()
1822 struct buffer_head *bh; in ext4_get_parent() local
1824 bh = ext4_find_entry(d_inode(child), &dotdot_name, &de, NULL); in ext4_get_parent()
1825 if (IS_ERR(bh)) in ext4_get_parent()
1826 return ERR_CAST(bh); in ext4_get_parent()
1827 if (!bh) in ext4_get_parent()
1830 brelse(bh); in ext4_get_parent()
1906 struct buffer_head **bh,struct dx_frame *frame, in do_split() argument
1916 char *data1 = (*bh)->b_data, *data2; in do_split()
1927 brelse(*bh); in do_split()
1928 *bh = NULL; in do_split()
1932 BUFFER_TRACE(*bh, "get_write_access"); in do_split()
1933 err = ext4_journal_get_write_access(handle, dir->i_sb, *bh, in do_split()
1938 BUFFER_TRACE(frame->bh, "get_write_access"); in do_split()
1939 err = ext4_journal_get_write_access(handle, dir->i_sb, frame->bh, in do_split()
1948 count = dx_make_map(dir, *bh, hinfo, map); in do_split()
1979 ext4_error_inode_block(dir, (*bh)->b_blocknr, 0, in do_split()
2003 ext4_initialize_dirent_tail(*bh, blocksize); in do_split()
2014 swap(*bh, bh2); in do_split()
2021 err = ext4_handle_dirty_dx_node(handle, dir, frame->bh); in do_split()
2031 brelse(*bh); in do_split()
2033 *bh = NULL; in do_split()
2037 int ext4_find_dest_de(struct inode *dir, struct buffer_head *bh, in ext4_find_dest_de() argument
2051 if (ext4_check_dir_entry(dir, NULL, de, bh, in ext4_find_dest_de()
2113 struct buffer_head *bh) in add_dirent_to_buf() argument
2123 err = ext4_find_dest_de(dir, bh, bh->b_data, in add_dirent_to_buf()
2128 BUFFER_TRACE(bh, "get_write_access"); in add_dirent_to_buf()
2129 err = ext4_journal_get_write_access(handle, dir->i_sb, bh, in add_dirent_to_buf()
2154 BUFFER_TRACE(bh, "call ext4_handle_dirty_metadata"); in add_dirent_to_buf()
2155 err = ext4_handle_dirty_dirblock(handle, dir, bh); in add_dirent_to_buf()
2213 struct inode *inode, struct buffer_head *bh) in make_indexed_dir() argument
2233 BUFFER_TRACE(bh, "get_write_access"); in make_indexed_dir()
2234 retval = ext4_journal_get_write_access(handle, dir->i_sb, bh, in make_indexed_dir()
2238 brelse(bh); in make_indexed_dir()
2242 root = (struct dx_root *) bh->b_data; in make_indexed_dir()
2244 brelse(bh); in make_indexed_dir()
2257 brelse(bh); in make_indexed_dir()
2271 brelse(bh); in make_indexed_dir()
2311 brelse(bh); in make_indexed_dir()
2319 frame->bh = bh; in make_indexed_dir()
2321 retval = ext4_handle_dirty_dx_node(handle, dir, frame->bh); in make_indexed_dir()
2362 struct buffer_head *bh = NULL; in __ext4_add_entry() local
2414 bh = ext4_read_dirblock(dir, block, DIRENT); in __ext4_add_entry()
2415 if (bh == NULL) { in __ext4_add_entry()
2416 bh = ext4_bread(handle, dir, block, in __ext4_add_entry()
2420 if (IS_ERR(bh)) { in __ext4_add_entry()
2421 retval = PTR_ERR(bh); in __ext4_add_entry()
2422 bh = NULL; in __ext4_add_entry()
2426 NULL, bh); in __ext4_add_entry()
2433 inode, bh); in __ext4_add_entry()
2434 bh = NULL; /* make_indexed_dir releases bh */ in __ext4_add_entry()
2437 brelse(bh); in __ext4_add_entry()
2439 bh = ext4_append(handle, dir, &block); in __ext4_add_entry()
2441 if (IS_ERR(bh)) { in __ext4_add_entry()
2442 retval = PTR_ERR(bh); in __ext4_add_entry()
2443 bh = NULL; in __ext4_add_entry()
2446 de = (struct ext4_dir_entry_2 *) bh->b_data; in __ext4_add_entry()
2451 ext4_initialize_dirent_tail(bh, blocksize); in __ext4_add_entry()
2453 retval = add_dirent_to_buf(handle, &fname, dir, inode, de, bh); in __ext4_add_entry()
2456 brelse(bh); in __ext4_add_entry()
2480 struct buffer_head *bh; in ext4_dx_add_entry() local
2493 bh = ext4_read_dirblock(dir, dx_get_block(frame->at), DIRENT_HTREE); in ext4_dx_add_entry()
2494 if (IS_ERR(bh)) { in ext4_dx_add_entry()
2495 err = PTR_ERR(bh); in ext4_dx_add_entry()
2496 bh = NULL; in ext4_dx_add_entry()
2500 BUFFER_TRACE(bh, "get_write_access"); in ext4_dx_add_entry()
2501 err = ext4_journal_get_write_access(handle, sb, bh, EXT4_JTR_NONE); in ext4_dx_add_entry()
2505 err = add_dirent_to_buf(handle, fname, dir, inode, NULL, bh); in ext4_dx_add_entry()
2557 BUFFER_TRACE(frame->bh, "get_write_access"); in ext4_dx_add_entry()
2558 err = ext4_journal_get_write_access(handle, sb, frame->bh, in ext4_dx_add_entry()
2570 BUFFER_TRACE(frame->bh, "get_write_access"); /* index root */ in ext4_dx_add_entry()
2572 (frame - 1)->bh, in ext4_dx_add_entry()
2589 swap(frame->bh, bh2); in ext4_dx_add_entry()
2602 (frame - 1)->bh); in ext4_dx_add_entry()
2606 frame->bh); in ext4_dx_add_entry()
2618 dxroot = (struct dx_root *)frames[0].bh->b_data; in ext4_dx_add_entry()
2623 err = ext4_handle_dirty_dx_node(handle, dir, frame->bh); in ext4_dx_add_entry()
2634 de = do_split(handle, dir, &bh, frame, &fname->hinfo); in ext4_dx_add_entry()
2639 err = add_dirent_to_buf(handle, fname, dir, inode, de, bh); in ext4_dx_add_entry()
2645 brelse(bh); in ext4_dx_add_entry()
2661 struct buffer_head *bh, in ext4_generic_delete_entry() argument
2674 if (ext4_check_dir_entry(dir, NULL, de, bh, in ext4_generic_delete_entry()
2712 struct buffer_head *bh) in ext4_delete_entry() argument
2718 err = ext4_delete_inline_entry(handle, dir, de_del, bh, in ext4_delete_entry()
2727 BUFFER_TRACE(bh, "get_write_access"); in ext4_delete_entry()
2728 err = ext4_journal_get_write_access(handle, dir->i_sb, bh, in ext4_delete_entry()
2733 err = ext4_generic_delete_entry(dir, de_del, bh, bh->b_data, in ext4_delete_entry()
2738 BUFFER_TRACE(bh, "call ext4_handle_dirty_metadata"); in ext4_delete_entry()
2739 err = ext4_handle_dirty_dirblock(handle, dir, bh); in ext4_delete_entry()
2926 struct buffer_head *bh, unsigned int parent_ino, in ext4_init_dirblock() argument
2929 struct ext4_dir_entry_2 *de = (struct ext4_dir_entry_2 *) bh->b_data; in ext4_init_dirblock()
2930 size_t blocksize = bh->b_size; in ext4_init_dirblock()
2953 header_size = (char *)de - bh->b_data; in ext4_init_dirblock()
2955 ext4_update_final_de(bh->b_data, inline_size + header_size, in ext4_init_dirblock()
2964 ext4_initialize_dirent_tail(bh, blocksize); in ext4_init_dirblock()
2966 set_buffer_uptodate(bh); in ext4_init_dirblock()
2967 set_buffer_verified(bh); in ext4_init_dirblock()
2968 return ext4_handle_dirty_dirblock(handle, inode, bh); in ext4_init_dirblock()
3068 struct buffer_head *bh; in ext4_empty_dir() local
3087 bh = ext4_read_dirblock(inode, 0, EITHER); in ext4_empty_dir()
3088 if (IS_ERR(bh)) in ext4_empty_dir()
3091 de = (struct ext4_dir_entry_2 *) bh->b_data; in ext4_empty_dir()
3092 if (ext4_check_dir_entry(inode, NULL, de, bh, bh->b_data, bh->b_size, in ext4_empty_dir()
3097 brelse(bh); in ext4_empty_dir()
3102 if (ext4_check_dir_entry(inode, NULL, de, bh, bh->b_data, bh->b_size, in ext4_empty_dir()
3107 brelse(bh); in ext4_empty_dir()
3114 brelse(bh); in ext4_empty_dir()
3116 bh = ext4_read_dirblock(inode, lblock, EITHER); in ext4_empty_dir()
3117 if (bh == NULL) { in ext4_empty_dir()
3121 if (IS_ERR(bh)) in ext4_empty_dir()
3124 de = (struct ext4_dir_entry_2 *) (bh->b_data + in ext4_empty_dir()
3126 if (ext4_check_dir_entry(inode, NULL, de, bh, in ext4_empty_dir()
3127 bh->b_data, bh->b_size, offset) || in ext4_empty_dir()
3129 brelse(bh); in ext4_empty_dir()
3134 brelse(bh); in ext4_empty_dir()
3142 struct buffer_head *bh; in ext4_rmdir() local
3160 bh = ext4_find_entry(dir, &dentry->d_name, &de, NULL); in ext4_rmdir()
3161 if (IS_ERR(bh)) in ext4_rmdir()
3162 return PTR_ERR(bh); in ext4_rmdir()
3163 if (!bh) in ext4_rmdir()
3187 retval = ext4_delete_entry(handle, dir, de, bh); in ext4_rmdir()
3222 brelse(bh); in ext4_rmdir()
3233 struct buffer_head *bh; in __ext4_unlink() local
3242 bh = ext4_find_entry(dir, d_name, &de, NULL); in __ext4_unlink()
3243 if (IS_ERR(bh)) in __ext4_unlink()
3244 return PTR_ERR(bh); in __ext4_unlink()
3246 if (!bh) in __ext4_unlink()
3272 retval = ext4_delete_entry(handle, dir, de, bh); in __ext4_unlink()
3297 brelse(bh); in __ext4_unlink()
3340 struct buffer_head *bh; in ext4_init_symlink_block() local
3344 bh = ext4_bread(handle, inode, 0, EXT4_GET_BLOCKS_CREATE); in ext4_init_symlink_block()
3345 if (IS_ERR(bh)) in ext4_init_symlink_block()
3346 return PTR_ERR(bh); in ext4_init_symlink_block()
3348 BUFFER_TRACE(bh, "get_write_access"); in ext4_init_symlink_block()
3349 err = ext4_journal_get_write_access(handle, inode->i_sb, bh, EXT4_JTR_NONE); in ext4_init_symlink_block()
3353 kaddr = (char *)bh->b_data; in ext4_init_symlink_block()
3357 err = ext4_handle_dirty_metadata(handle, inode, bh); in ext4_init_symlink_block()
3359 brelse(bh); in ext4_init_symlink_block()
3533 struct buffer_head *bh; in ext4_get_first_dir_block() local
3539 bh = ext4_read_dirblock(inode, 0, EITHER); in ext4_get_first_dir_block()
3540 if (IS_ERR(bh)) { in ext4_get_first_dir_block()
3541 *retval = PTR_ERR(bh); in ext4_get_first_dir_block()
3545 de = (struct ext4_dir_entry_2 *) bh->b_data; in ext4_get_first_dir_block()
3546 if (ext4_check_dir_entry(inode, NULL, de, bh, bh->b_data, in ext4_get_first_dir_block()
3547 bh->b_size, 0) || in ext4_get_first_dir_block()
3551 brelse(bh); in ext4_get_first_dir_block()
3558 if (ext4_check_dir_entry(inode, NULL, de, bh, bh->b_data, in ext4_get_first_dir_block()
3559 bh->b_size, offset) || in ext4_get_first_dir_block()
3563 brelse(bh); in ext4_get_first_dir_block()
3569 return bh; in ext4_get_first_dir_block()
3584 struct buffer_head *bh; member
3648 BUFFER_TRACE(ent->bh, "get write access"); in ext4_setent()
3649 retval = ext4_journal_get_write_access(handle, ent->dir->i_sb, ent->bh, in ext4_setent()
3659 BUFFER_TRACE(ent->bh, "call ext4_handle_dirty_metadata"); in ext4_setent()
3661 retval2 = ext4_handle_dirty_dirblock(handle, ent->dir, ent->bh); in ext4_setent()
3681 old.bh = ext4_find_entry(old.dir, &old.dentry->d_name, &old.de, in ext4_resetent()
3683 if (IS_ERR(old.bh)) in ext4_resetent()
3684 retval = PTR_ERR(old.bh); in ext4_resetent()
3685 if (!old.bh) in ext4_resetent()
3693 brelse(old.bh); in ext4_resetent()
3700 struct buffer_head *bh; in ext4_find_delete_entry() local
3703 bh = ext4_find_entry(dir, d_name, &de, NULL); in ext4_find_delete_entry()
3704 if (IS_ERR(bh)) in ext4_find_delete_entry()
3705 return PTR_ERR(bh); in ext4_find_delete_entry()
3706 if (bh) { in ext4_find_delete_entry()
3707 retval = ext4_delete_entry(handle, dir, de, bh); in ext4_find_delete_entry()
3708 brelse(bh); in ext4_find_delete_entry()
3731 retval = ext4_delete_entry(handle, ent->dir, ent->de, ent->bh); in ext4_rename_delete()
3849 old.bh = ext4_find_entry(old.dir, &old.dentry->d_name, &old.de, in ext4_rename()
3851 if (IS_ERR(old.bh)) in ext4_rename()
3852 return PTR_ERR(old.bh); in ext4_rename()
3861 if (!old.bh || le32_to_cpu(old.de->inode) != old.inode->i_ino) in ext4_rename()
3864 new.bh = ext4_find_entry(new.dir, &new.dentry->d_name, in ext4_rename()
3866 if (IS_ERR(new.bh)) { in ext4_rename()
3867 retval = PTR_ERR(new.bh); in ext4_rename()
3868 new.bh = NULL; in ext4_rename()
3871 if (new.bh) { in ext4_rename()
3873 brelse(new.bh); in ext4_rename()
3874 new.bh = NULL; in ext4_rename()
3938 if (!new.bh) { in ext4_rename()
4047 brelse(old.bh); in ext4_rename()
4048 brelse(new.bh); in ext4_rename()
4085 old.bh = ext4_find_entry(old.dir, &old.dentry->d_name, in ext4_cross_rename()
4087 if (IS_ERR(old.bh)) in ext4_cross_rename()
4088 return PTR_ERR(old.bh); in ext4_cross_rename()
4096 if (!old.bh || le32_to_cpu(old.de->inode) != old.inode->i_ino) in ext4_cross_rename()
4099 new.bh = ext4_find_entry(new.dir, &new.dentry->d_name, in ext4_cross_rename()
4101 if (IS_ERR(new.bh)) { in ext4_cross_rename()
4102 retval = PTR_ERR(new.bh); in ext4_cross_rename()
4103 new.bh = NULL; in ext4_cross_rename()
4108 if (!new.bh || le32_to_cpu(new.de->inode) != new.inode->i_ino) in ext4_cross_rename()
4187 brelse(old.bh); in ext4_cross_rename()
4188 brelse(new.bh); in ext4_cross_rename()