Lines Matching refs:em_tree

14 static void free_extent_map_tree(struct extent_map_tree *em_tree)  in free_extent_map_tree()  argument
19 write_lock(&em_tree->lock); in free_extent_map_tree()
20 while (!RB_EMPTY_ROOT(&em_tree->map.rb_root)) { in free_extent_map_tree()
21 node = rb_first_cached(&em_tree->map); in free_extent_map_tree()
23 remove_extent_mapping(em_tree, em); in free_extent_map_tree()
37 write_unlock(&em_tree->lock); in free_extent_map_tree()
57 struct extent_map_tree *em_tree) in test_case_1() argument
75 write_lock(&em_tree->lock); in test_case_1()
76 ret = add_extent_mapping(em_tree, em, 0); in test_case_1()
77 write_unlock(&em_tree->lock); in test_case_1()
96 write_lock(&em_tree->lock); in test_case_1()
97 ret = add_extent_mapping(em_tree, em, 0); in test_case_1()
98 write_unlock(&em_tree->lock); in test_case_1()
117 write_lock(&em_tree->lock); in test_case_1()
118 ret = btrfs_add_extent_mapping(fs_info, em_tree, &em, em->start, em->len); in test_case_1()
119 write_unlock(&em_tree->lock); in test_case_1()
135 free_extent_map_tree(em_tree); in test_case_1()
147 struct extent_map_tree *em_tree) in test_case_2() argument
163 write_lock(&em_tree->lock); in test_case_2()
164 ret = add_extent_mapping(em_tree, em, 0); in test_case_2()
165 write_unlock(&em_tree->lock); in test_case_2()
184 write_lock(&em_tree->lock); in test_case_2()
185 ret = add_extent_mapping(em_tree, em, 0); in test_case_2()
186 write_unlock(&em_tree->lock); in test_case_2()
205 write_lock(&em_tree->lock); in test_case_2()
206 ret = btrfs_add_extent_mapping(fs_info, em_tree, &em, em->start, em->len); in test_case_2()
207 write_unlock(&em_tree->lock); in test_case_2()
223 free_extent_map_tree(em_tree); in test_case_2()
229 struct extent_map_tree *em_tree, u64 start) in __test_case_3() argument
246 write_lock(&em_tree->lock); in __test_case_3()
247 ret = add_extent_mapping(em_tree, em, 0); in __test_case_3()
248 write_unlock(&em_tree->lock); in __test_case_3()
267 write_lock(&em_tree->lock); in __test_case_3()
268 ret = btrfs_add_extent_mapping(fs_info, em_tree, &em, start, len); in __test_case_3()
269 write_unlock(&em_tree->lock); in __test_case_3()
290 free_extent_map_tree(em_tree); in __test_case_3()
312 struct extent_map_tree *em_tree) in test_case_3() argument
316 ret = __test_case_3(fs_info, em_tree, 0); in test_case_3()
319 ret = __test_case_3(fs_info, em_tree, SZ_8K); in test_case_3()
322 ret = __test_case_3(fs_info, em_tree, (12 * SZ_1K)); in test_case_3()
328 struct extent_map_tree *em_tree, u64 start) in __test_case_4() argument
345 write_lock(&em_tree->lock); in __test_case_4()
346 ret = add_extent_mapping(em_tree, em, 0); in __test_case_4()
347 write_unlock(&em_tree->lock); in __test_case_4()
366 write_lock(&em_tree->lock); in __test_case_4()
367 ret = add_extent_mapping(em_tree, em, 0); in __test_case_4()
368 write_unlock(&em_tree->lock); in __test_case_4()
386 write_lock(&em_tree->lock); in __test_case_4()
387 ret = btrfs_add_extent_mapping(fs_info, em_tree, &em, start, len); in __test_case_4()
388 write_unlock(&em_tree->lock); in __test_case_4()
403 free_extent_map_tree(em_tree); in __test_case_4()
434 struct extent_map_tree *em_tree) in test_case_4() argument
438 ret = __test_case_4(fs_info, em_tree, 0); in test_case_4()
441 ret = __test_case_4(fs_info, em_tree, SZ_4K); in test_case_4()
446 static int add_compressed_extent(struct extent_map_tree *em_tree, in add_compressed_extent() argument
463 write_lock(&em_tree->lock); in add_compressed_extent()
464 ret = add_extent_mapping(em_tree, em, 0); in add_compressed_extent()
465 write_unlock(&em_tree->lock); in add_compressed_extent()
511 static int validate_range(struct extent_map_tree *em_tree, int index) in validate_range() argument
516 for (i = 0, n = rb_first_cached(&em_tree->map); in validate_range()
572 struct extent_map_tree *em_tree; in test_case_5() local
585 em_tree = &BTRFS_I(inode)->extent_tree; in test_case_5()
588 ret = add_compressed_extent(em_tree, 0, SZ_4K * 3, 0); in test_case_5()
595 ret = add_compressed_extent(em_tree, SZ_4K * 3, SZ_4K * 3, SZ_4K); in test_case_5()
602 ret = add_compressed_extent(em_tree, SZ_4K * 6, SZ_4K * 3, SZ_8K); in test_case_5()
609 ret = add_compressed_extent(em_tree, SZ_32K + SZ_4K, SZ_4K, SZ_4K * 3); in test_case_5()
616 ret = add_compressed_extent(em_tree, SZ_4K * 10, SZ_4K * 6, SZ_16K); in test_case_5()
663 static int test_case_6(struct btrfs_fs_info *fs_info, struct extent_map_tree *em_tree) in test_case_6() argument
668 ret = add_compressed_extent(em_tree, 0, SZ_4K, 0); in test_case_6()
672 ret = add_compressed_extent(em_tree, SZ_4K, SZ_4K, 0); in test_case_6()
686 write_lock(&em_tree->lock); in test_case_6()
687 ret = btrfs_add_extent_mapping(fs_info, em_tree, &em, 0, SZ_8K); in test_case_6()
688 write_unlock(&em_tree->lock); in test_case_6()
707 free_extent_map_tree(em_tree); in test_case_6()
718 struct extent_map_tree *em_tree; in test_case_7() local
731 em_tree = &BTRFS_I(inode)->extent_tree; in test_case_7()
746 write_lock(&em_tree->lock); in test_case_7()
747 ret = add_extent_mapping(em_tree, em, 0); in test_case_7()
748 write_unlock(&em_tree->lock); in test_case_7()
767 write_lock(&em_tree->lock); in test_case_7()
768 ret = add_extent_mapping(em_tree, em, 0); in test_case_7()
769 write_unlock(&em_tree->lock); in test_case_7()
785 em = lookup_extent_mapping(em_tree, 0, SZ_16K); in test_case_7()
803 read_lock(&em_tree->lock); in test_case_7()
804 em = lookup_extent_mapping(em_tree, SZ_16K, SZ_16K); in test_case_7()
805 read_unlock(&em_tree->lock); in test_case_7()
811 read_lock(&em_tree->lock); in test_case_7()
812 em = lookup_extent_mapping(em_tree, SZ_32K, SZ_16K); in test_case_7()
813 read_unlock(&em_tree->lock); in test_case_7()
831 read_lock(&em_tree->lock); in test_case_7()
832 em = lookup_extent_mapping(em_tree, 48 * SZ_1K, (u64)-1); in test_case_7()
833 read_unlock(&em_tree->lock); in test_case_7()
956 struct extent_map_tree *em_tree; in btrfs_test_extent_map() local
1005 em_tree = kzalloc(sizeof(*em_tree), GFP_KERNEL); in btrfs_test_extent_map()
1006 if (!em_tree) { in btrfs_test_extent_map()
1011 extent_map_tree_init(em_tree); in btrfs_test_extent_map()
1013 ret = test_case_1(fs_info, em_tree); in btrfs_test_extent_map()
1016 ret = test_case_2(fs_info, em_tree); in btrfs_test_extent_map()
1019 ret = test_case_3(fs_info, em_tree); in btrfs_test_extent_map()
1022 ret = test_case_4(fs_info, em_tree); in btrfs_test_extent_map()
1028 ret = test_case_6(fs_info, em_tree); in btrfs_test_extent_map()
1043 kfree(em_tree); in btrfs_test_extent_map()