Lines Matching refs:dirty_i
756 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in __locate_dirty_segment() local
762 if (!test_and_set_bit(segno, dirty_i->dirty_segmap[dirty_type])) in __locate_dirty_segment()
763 dirty_i->nr_dirty[dirty_type]++; in __locate_dirty_segment()
773 if (!test_and_set_bit(segno, dirty_i->dirty_segmap[t])) in __locate_dirty_segment()
774 dirty_i->nr_dirty[t]++; in __locate_dirty_segment()
785 set_bit(secno, dirty_i->dirty_secmap); in __locate_dirty_segment()
793 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in __remove_dirty_segment() local
796 if (test_and_clear_bit(segno, dirty_i->dirty_segmap[dirty_type])) in __remove_dirty_segment()
797 dirty_i->nr_dirty[dirty_type]--; in __remove_dirty_segment()
803 if (test_and_clear_bit(segno, dirty_i->dirty_segmap[t])) in __remove_dirty_segment()
804 dirty_i->nr_dirty[t]--; in __remove_dirty_segment()
809 dirty_i->victim_secmap); in __remove_dirty_segment()
819 clear_bit(secno, dirty_i->dirty_secmap); in __remove_dirty_segment()
824 set_bit(secno, dirty_i->dirty_secmap); in __remove_dirty_segment()
836 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in locate_dirty_segment() local
844 mutex_lock(&dirty_i->seglist_lock); in locate_dirty_segment()
860 mutex_unlock(&dirty_i->seglist_lock); in locate_dirty_segment()
866 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in f2fs_dirty_to_prefree() local
869 mutex_lock(&dirty_i->seglist_lock); in f2fs_dirty_to_prefree()
870 for_each_set_bit(segno, dirty_i->dirty_segmap[DIRTY], MAIN_SEGS(sbi)) { in f2fs_dirty_to_prefree()
878 mutex_unlock(&dirty_i->seglist_lock); in f2fs_dirty_to_prefree()
886 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in f2fs_get_unusable_blocks() local
892 mutex_lock(&dirty_i->seglist_lock); in f2fs_get_unusable_blocks()
893 for_each_set_bit(segno, dirty_i->dirty_segmap[DIRTY], MAIN_SEGS(sbi)) { in f2fs_get_unusable_blocks()
902 mutex_unlock(&dirty_i->seglist_lock); in f2fs_get_unusable_blocks()
925 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in get_free_segment() local
928 mutex_lock(&dirty_i->seglist_lock); in get_free_segment()
929 for_each_set_bit(segno, dirty_i->dirty_segmap[DIRTY], MAIN_SEGS(sbi)) { in get_free_segment()
934 mutex_unlock(&dirty_i->seglist_lock); in get_free_segment()
937 mutex_unlock(&dirty_i->seglist_lock); in get_free_segment()
2140 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in set_prefree_as_free_segments() local
2143 mutex_lock(&dirty_i->seglist_lock); in set_prefree_as_free_segments()
2144 for_each_set_bit(segno, dirty_i->dirty_segmap[PRE], MAIN_SEGS(sbi)) in set_prefree_as_free_segments()
2146 mutex_unlock(&dirty_i->seglist_lock); in set_prefree_as_free_segments()
2155 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in f2fs_clear_prefree_segments() local
2156 unsigned long *prefree_map = dirty_i->dirty_segmap[PRE]; in f2fs_clear_prefree_segments()
2166 mutex_lock(&dirty_i->seglist_lock); in f2fs_clear_prefree_segments()
2186 dirty_i->nr_dirty[PRE]--; in f2fs_clear_prefree_segments()
2217 mutex_unlock(&dirty_i->seglist_lock); in f2fs_clear_prefree_segments()
2854 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in change_curseg() local
2865 mutex_lock(&dirty_i->seglist_lock); in change_curseg()
2868 mutex_unlock(&dirty_i->seglist_lock); in change_curseg()
4752 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in init_dirty_segmap() local
4771 mutex_lock(&dirty_i->seglist_lock); in init_dirty_segmap()
4773 mutex_unlock(&dirty_i->seglist_lock); in init_dirty_segmap()
4779 mutex_lock(&dirty_i->seglist_lock); in init_dirty_segmap()
4788 set_bit(secno, dirty_i->dirty_secmap); in init_dirty_segmap()
4790 mutex_unlock(&dirty_i->seglist_lock); in init_dirty_segmap()
4795 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in init_victim_secmap() local
4798 dirty_i->victim_secmap = f2fs_kvzalloc(sbi, bitmap_size, GFP_KERNEL); in init_victim_secmap()
4799 if (!dirty_i->victim_secmap) in init_victim_secmap()
4802 dirty_i->pinned_secmap = f2fs_kvzalloc(sbi, bitmap_size, GFP_KERNEL); in init_victim_secmap()
4803 if (!dirty_i->pinned_secmap) in init_victim_secmap()
4806 dirty_i->pinned_secmap_cnt = 0; in init_victim_secmap()
4807 dirty_i->enable_pin_section = true; in init_victim_secmap()
4813 struct dirty_seglist_info *dirty_i; in build_dirty_segmap() local
4817 dirty_i = f2fs_kzalloc(sbi, sizeof(struct dirty_seglist_info), in build_dirty_segmap()
4819 if (!dirty_i) in build_dirty_segmap()
4822 SM_I(sbi)->dirty_info = dirty_i; in build_dirty_segmap()
4823 mutex_init(&dirty_i->seglist_lock); in build_dirty_segmap()
4828 dirty_i->dirty_segmap[i] = f2fs_kvzalloc(sbi, bitmap_size, in build_dirty_segmap()
4830 if (!dirty_i->dirty_segmap[i]) in build_dirty_segmap()
4836 dirty_i->dirty_secmap = f2fs_kvzalloc(sbi, in build_dirty_segmap()
4838 if (!dirty_i->dirty_secmap) in build_dirty_segmap()
5339 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in discard_dirty_segmap() local
5341 mutex_lock(&dirty_i->seglist_lock); in discard_dirty_segmap()
5342 kvfree(dirty_i->dirty_segmap[dirty_type]); in discard_dirty_segmap()
5343 dirty_i->nr_dirty[dirty_type] = 0; in discard_dirty_segmap()
5344 mutex_unlock(&dirty_i->seglist_lock); in discard_dirty_segmap()
5349 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in destroy_victim_secmap() local
5351 kvfree(dirty_i->pinned_secmap); in destroy_victim_secmap()
5352 kvfree(dirty_i->victim_secmap); in destroy_victim_secmap()
5357 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in destroy_dirty_segmap() local
5360 if (!dirty_i) in destroy_dirty_segmap()
5368 mutex_lock(&dirty_i->seglist_lock); in destroy_dirty_segmap()
5369 kvfree(dirty_i->dirty_secmap); in destroy_dirty_segmap()
5370 mutex_unlock(&dirty_i->seglist_lock); in destroy_dirty_segmap()
5375 kfree(dirty_i); in destroy_dirty_segmap()