Lines Matching refs:dirty_i
711 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in __locate_dirty_segment() local
717 if (!test_and_set_bit(segno, dirty_i->dirty_segmap[dirty_type])) in __locate_dirty_segment()
718 dirty_i->nr_dirty[dirty_type]++; in __locate_dirty_segment()
728 if (!test_and_set_bit(segno, dirty_i->dirty_segmap[t])) in __locate_dirty_segment()
729 dirty_i->nr_dirty[t]++; in __locate_dirty_segment()
740 set_bit(secno, dirty_i->dirty_secmap); in __locate_dirty_segment()
748 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in __remove_dirty_segment() local
751 if (test_and_clear_bit(segno, dirty_i->dirty_segmap[dirty_type])) in __remove_dirty_segment()
752 dirty_i->nr_dirty[dirty_type]--; in __remove_dirty_segment()
758 if (test_and_clear_bit(segno, dirty_i->dirty_segmap[t])) in __remove_dirty_segment()
759 dirty_i->nr_dirty[t]--; in __remove_dirty_segment()
764 dirty_i->victim_secmap); in __remove_dirty_segment()
774 clear_bit(secno, dirty_i->dirty_secmap); in __remove_dirty_segment()
779 set_bit(secno, dirty_i->dirty_secmap); in __remove_dirty_segment()
791 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in locate_dirty_segment() local
799 mutex_lock(&dirty_i->seglist_lock); in locate_dirty_segment()
815 mutex_unlock(&dirty_i->seglist_lock); in locate_dirty_segment()
821 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in f2fs_dirty_to_prefree() local
824 mutex_lock(&dirty_i->seglist_lock); in f2fs_dirty_to_prefree()
825 for_each_set_bit(segno, dirty_i->dirty_segmap[DIRTY], MAIN_SEGS(sbi)) { in f2fs_dirty_to_prefree()
833 mutex_unlock(&dirty_i->seglist_lock); in f2fs_dirty_to_prefree()
841 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in f2fs_get_unusable_blocks() local
847 mutex_lock(&dirty_i->seglist_lock); in f2fs_get_unusable_blocks()
848 for_each_set_bit(segno, dirty_i->dirty_segmap[DIRTY], MAIN_SEGS(sbi)) { in f2fs_get_unusable_blocks()
857 mutex_unlock(&dirty_i->seglist_lock); in f2fs_get_unusable_blocks()
880 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in get_free_segment() local
883 mutex_lock(&dirty_i->seglist_lock); in get_free_segment()
884 for_each_set_bit(segno, dirty_i->dirty_segmap[DIRTY], MAIN_SEGS(sbi)) { in get_free_segment()
889 mutex_unlock(&dirty_i->seglist_lock); in get_free_segment()
892 mutex_unlock(&dirty_i->seglist_lock); in get_free_segment()
1900 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in set_prefree_as_free_segments() local
1903 mutex_lock(&dirty_i->seglist_lock); in set_prefree_as_free_segments()
1904 for_each_set_bit(segno, dirty_i->dirty_segmap[PRE], MAIN_SEGS(sbi)) in set_prefree_as_free_segments()
1906 mutex_unlock(&dirty_i->seglist_lock); in set_prefree_as_free_segments()
1915 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in f2fs_clear_prefree_segments() local
1916 unsigned long *prefree_map = dirty_i->dirty_segmap[PRE]; in f2fs_clear_prefree_segments()
1926 mutex_lock(&dirty_i->seglist_lock); in f2fs_clear_prefree_segments()
1946 dirty_i->nr_dirty[PRE]--; in f2fs_clear_prefree_segments()
1975 mutex_unlock(&dirty_i->seglist_lock); in f2fs_clear_prefree_segments()
2647 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in change_curseg() local
2659 mutex_lock(&dirty_i->seglist_lock); in change_curseg()
2662 mutex_unlock(&dirty_i->seglist_lock); in change_curseg()
4516 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in init_dirty_segmap() local
4535 mutex_lock(&dirty_i->seglist_lock); in init_dirty_segmap()
4537 mutex_unlock(&dirty_i->seglist_lock); in init_dirty_segmap()
4543 mutex_lock(&dirty_i->seglist_lock); in init_dirty_segmap()
4552 set_bit(secno, dirty_i->dirty_secmap); in init_dirty_segmap()
4554 mutex_unlock(&dirty_i->seglist_lock); in init_dirty_segmap()
4559 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in init_victim_secmap() local
4562 dirty_i->victim_secmap = f2fs_kvzalloc(sbi, bitmap_size, GFP_KERNEL); in init_victim_secmap()
4563 if (!dirty_i->victim_secmap) in init_victim_secmap()
4566 dirty_i->pinned_secmap = f2fs_kvzalloc(sbi, bitmap_size, GFP_KERNEL); in init_victim_secmap()
4567 if (!dirty_i->pinned_secmap) in init_victim_secmap()
4570 dirty_i->pinned_secmap_cnt = 0; in init_victim_secmap()
4571 dirty_i->enable_pin_section = true; in init_victim_secmap()
4577 struct dirty_seglist_info *dirty_i; in build_dirty_segmap() local
4581 dirty_i = f2fs_kzalloc(sbi, sizeof(struct dirty_seglist_info), in build_dirty_segmap()
4583 if (!dirty_i) in build_dirty_segmap()
4586 SM_I(sbi)->dirty_info = dirty_i; in build_dirty_segmap()
4587 mutex_init(&dirty_i->seglist_lock); in build_dirty_segmap()
4592 dirty_i->dirty_segmap[i] = f2fs_kvzalloc(sbi, bitmap_size, in build_dirty_segmap()
4594 if (!dirty_i->dirty_segmap[i]) in build_dirty_segmap()
4600 dirty_i->dirty_secmap = f2fs_kvzalloc(sbi, in build_dirty_segmap()
4602 if (!dirty_i->dirty_secmap) in build_dirty_segmap()
5143 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in discard_dirty_segmap() local
5145 mutex_lock(&dirty_i->seglist_lock); in discard_dirty_segmap()
5146 kvfree(dirty_i->dirty_segmap[dirty_type]); in discard_dirty_segmap()
5147 dirty_i->nr_dirty[dirty_type] = 0; in discard_dirty_segmap()
5148 mutex_unlock(&dirty_i->seglist_lock); in discard_dirty_segmap()
5153 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in destroy_victim_secmap() local
5155 kvfree(dirty_i->pinned_secmap); in destroy_victim_secmap()
5156 kvfree(dirty_i->victim_secmap); in destroy_victim_secmap()
5161 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); in destroy_dirty_segmap() local
5164 if (!dirty_i) in destroy_dirty_segmap()
5172 mutex_lock(&dirty_i->seglist_lock); in destroy_dirty_segmap()
5173 kvfree(dirty_i->dirty_secmap); in destroy_dirty_segmap()
5174 mutex_unlock(&dirty_i->seglist_lock); in destroy_dirty_segmap()
5179 kfree(dirty_i); in destroy_dirty_segmap()