Lines Matching refs:frame
274 struct dx_frame *frame);
283 static void dx_insert_block(struct dx_frame *frame,
286 struct dx_frame *frame,
756 struct dx_frame *frame = frame_in; in dx_probe() local
761 frame->bh = ext4_read_dirblock(dir, 0, INDEX); in dx_probe()
762 if (IS_ERR(frame->bh)) in dx_probe()
763 return (struct dx_frame *) frame->bh; in dx_probe()
765 root = (struct dx_root *) frame->bh->b_data; in dx_probe()
853 frame->entries = entries; in dx_probe()
854 frame->at = at; in dx_probe()
856 return frame; in dx_probe()
857 frame++; in dx_probe()
858 frame->bh = ext4_read_dirblock(dir, dx_get_block(at), INDEX); in dx_probe()
859 if (IS_ERR(frame->bh)) { in dx_probe()
860 ret_err = (struct dx_frame *) frame->bh; in dx_probe()
861 frame->bh = NULL; in dx_probe()
864 entries = ((struct dx_node *) frame->bh->b_data)->entries; in dx_probe()
874 while (frame >= frame_in) { in dx_probe()
875 brelse(frame->bh); in dx_probe()
876 frame--; in dx_probe()
923 struct dx_frame *frame, in ext4_htree_next_block() argument
932 p = frame; in ext4_htree_next_block()
1088 struct dx_frame frames[EXT4_HTREE_LEVEL], *frame; in ext4_htree_fill_tree() local
1123 frame = dx_probe(NULL, dir, &hinfo, frames); in ext4_htree_fill_tree()
1124 if (IS_ERR(frame)) in ext4_htree_fill_tree()
1125 return PTR_ERR(frame); in ext4_htree_fill_tree()
1156 block = dx_get_block(frame->at); in ext4_htree_fill_tree()
1166 frame, frames, &hashval); in ext4_htree_fill_tree()
1259 static void dx_insert_block(struct dx_frame *frame, u32 hash, ext4_lblk_t block) in dx_insert_block() argument
1261 struct dx_entry *entries = frame->entries; in dx_insert_block()
1262 struct dx_entry *old = frame->at, *new = old + 1; in dx_insert_block()
1627 struct dx_frame frames[EXT4_HTREE_LEVEL], *frame; in ext4_dx_find_entry() local
1635 frame = dx_probe(fname, dir, NULL, frames); in ext4_dx_find_entry()
1636 if (IS_ERR(frame)) in ext4_dx_find_entry()
1637 return (struct buffer_head *) frame; in ext4_dx_find_entry()
1639 block = dx_get_block(frame->at); in ext4_dx_find_entry()
1656 retval = ext4_htree_next_block(dir, fname->hinfo.hash, frame, in ext4_dx_find_entry()
1811 struct buffer_head **bh,struct dx_frame *frame, in do_split() argument
1841 BUFFER_TRACE(frame->bh, "get_write_access"); in do_split()
1842 err = ext4_journal_get_write_access(handle, frame->bh); in do_split()
1869 (unsigned long)dx_get_block(frame->at), in do_split()
1897 dx_insert_block(frame, hash2 + continued, newblock); in do_split()
1901 err = ext4_handle_dirty_dx_node(handle, dir, frame->bh); in do_split()
1905 dxtrace(dx_show_index("frame", frame->entries)); in do_split()
2042 struct dx_frame frames[EXT4_HTREE_LEVEL], *frame; in make_indexed_dir() local
2118 frame = frames; in make_indexed_dir()
2119 frame->entries = entries; in make_indexed_dir()
2120 frame->at = entries; in make_indexed_dir()
2121 frame->bh = bh; in make_indexed_dir()
2123 retval = ext4_handle_dirty_dx_node(handle, dir, frame->bh); in make_indexed_dir()
2130 de = do_split(handle,dir, &bh2, frame, &fname->hinfo); in make_indexed_dir()
2268 struct dx_frame frames[EXT4_HTREE_LEVEL], *frame; in ext4_dx_add_entry() local
2278 frame = dx_probe(fname, dir, NULL, frames); in ext4_dx_add_entry()
2279 if (IS_ERR(frame)) in ext4_dx_add_entry()
2280 return PTR_ERR(frame); in ext4_dx_add_entry()
2281 entries = frame->entries; in ext4_dx_add_entry()
2282 at = frame->at; in ext4_dx_add_entry()
2283 bh = ext4_read_dirblock(dir, dx_get_block(frame->at), DIRENT_HTREE); in ext4_dx_add_entry()
2306 int levels = frame - frames + 1; in ext4_dx_add_entry()
2313 while (frame > frames) { in ext4_dx_add_entry()
2314 if (dx_get_count((frame - 1)->entries) < in ext4_dx_add_entry()
2315 dx_get_limit((frame - 1)->entries)) { in ext4_dx_add_entry()
2319 frame--; /* split higher index block */ in ext4_dx_add_entry()
2320 at = frame->at; in ext4_dx_add_entry()
2321 entries = frame->entries; in ext4_dx_add_entry()
2347 BUFFER_TRACE(frame->bh, "get_write_access"); in ext4_dx_add_entry()
2348 err = ext4_journal_get_write_access(handle, frame->bh); in ext4_dx_add_entry()
2357 BUFFER_TRACE(frame->bh, "get_write_access"); /* index root */ in ext4_dx_add_entry()
2359 (frame - 1)->bh); in ext4_dx_add_entry()
2371 frame->at = at = at - entries - icount1 + entries2; in ext4_dx_add_entry()
2372 frame->entries = entries = entries2; in ext4_dx_add_entry()
2373 swap(frame->bh, bh2); in ext4_dx_add_entry()
2375 dx_insert_block((frame - 1), hash2, newblock); in ext4_dx_add_entry()
2376 dxtrace(dx_show_index("node", frame->entries)); in ext4_dx_add_entry()
2384 (frame - 1)->bh); in ext4_dx_add_entry()
2389 frame->bh); in ext4_dx_add_entry()
2406 err = ext4_handle_dirty_dx_node(handle, dir, frame->bh); in ext4_dx_add_entry()
2415 de = do_split(handle, dir, &bh, frame, &fname->hinfo); in ext4_dx_add_entry()