Lines Matching refs:gc_list
839 static struct inode *find_gc_inode(struct gc_inode_list *gc_list, nid_t ino) in find_gc_inode() argument
843 ie = radix_tree_lookup(&gc_list->iroot, ino); in find_gc_inode()
849 static void add_gc_inode(struct gc_inode_list *gc_list, struct inode *inode) in add_gc_inode() argument
853 if (inode == find_gc_inode(gc_list, inode->i_ino)) { in add_gc_inode()
861 f2fs_radix_tree_insert(&gc_list->iroot, inode->i_ino, new_ie); in add_gc_inode()
862 list_add_tail(&new_ie->list, &gc_list->ilist); in add_gc_inode()
865 static void put_gc_inode(struct gc_inode_list *gc_list) in put_gc_inode() argument
869 list_for_each_entry_safe(ie, next_ie, &gc_list->ilist, list) { in put_gc_inode()
870 radix_tree_delete(&gc_list->iroot, ie->inode->i_ino); in put_gc_inode()
1399 struct gc_inode_list *gc_list, unsigned int segno, int gc_type, in gc_data_segment() argument
1481 add_gc_inode(gc_list, inode); in gc_data_segment()
1494 add_gc_inode(gc_list, inode); in gc_data_segment()
1499 inode = find_gc_inode(gc_list, dni.ino); in gc_data_segment()
1565 struct gc_inode_list *gc_list, int gc_type, in do_garbage_collect() argument
1652 submitted += gc_data_segment(sbi, sum->entries, gc_list, in do_garbage_collect()
1690 struct gc_inode_list gc_list = { in f2fs_gc() local
1691 .ilist = LIST_HEAD_INIT(gc_list.ilist), in f2fs_gc()
1692 .iroot = RADIX_TREE_INIT(gc_list.iroot, GFP_NOFS), in f2fs_gc()
1745 seg_freed = do_garbage_collect(sbi, segno, &gc_list, gc_type, force); in f2fs_gc()
1797 put_gc_inode(&gc_list); in f2fs_gc()
1880 struct gc_inode_list gc_list = { in free_segment_range() local
1881 .ilist = LIST_HEAD_INIT(gc_list.ilist), in free_segment_range()
1882 .iroot = RADIX_TREE_INIT(gc_list.iroot, GFP_NOFS), in free_segment_range()
1885 do_garbage_collect(sbi, segno, &gc_list, FG_GC, true); in free_segment_range()
1886 put_gc_inode(&gc_list); in free_segment_range()