Lines Matching refs:defrag
88 struct inode_defrag *defrag) in __btrfs_add_inode_defrag() argument
101 ret = __compare_inode_defrag(defrag, entry); in __btrfs_add_inode_defrag()
111 if (defrag->transid < entry->transid) in __btrfs_add_inode_defrag()
112 entry->transid = defrag->transid; in __btrfs_add_inode_defrag()
113 entry->extent_thresh = min(defrag->extent_thresh, in __btrfs_add_inode_defrag()
119 rb_link_node(&defrag->rb_node, parent, p); in __btrfs_add_inode_defrag()
120 rb_insert_color(&defrag->rb_node, &fs_info->defrag_inodes); in __btrfs_add_inode_defrag()
144 struct inode_defrag *defrag; in btrfs_add_inode_defrag() local
159 defrag = kmem_cache_zalloc(btrfs_inode_defrag_cachep, GFP_NOFS); in btrfs_add_inode_defrag()
160 if (!defrag) in btrfs_add_inode_defrag()
163 defrag->ino = btrfs_ino(inode); in btrfs_add_inode_defrag()
164 defrag->transid = transid; in btrfs_add_inode_defrag()
165 defrag->root = root->root_key.objectid; in btrfs_add_inode_defrag()
166 defrag->extent_thresh = extent_thresh; in btrfs_add_inode_defrag()
175 ret = __btrfs_add_inode_defrag(inode, defrag); in btrfs_add_inode_defrag()
177 kmem_cache_free(btrfs_inode_defrag_cachep, defrag); in btrfs_add_inode_defrag()
179 kmem_cache_free(btrfs_inode_defrag_cachep, defrag); in btrfs_add_inode_defrag()
232 struct inode_defrag *defrag; in btrfs_cleanup_defrag_inodes() local
239 defrag = rb_entry(node, struct inode_defrag, rb_node); in btrfs_cleanup_defrag_inodes()
240 kmem_cache_free(btrfs_inode_defrag_cachep, defrag); in btrfs_cleanup_defrag_inodes()
252 struct inode_defrag *defrag) in __btrfs_run_defrag_inode() argument
267 inode_root = btrfs_get_fs_root(fs_info, defrag->root, true); in __btrfs_run_defrag_inode()
273 inode = btrfs_iget(fs_info->sb, defrag->ino, inode_root); in __btrfs_run_defrag_inode()
290 range.extent_thresh = defrag->extent_thresh; in __btrfs_run_defrag_inode()
293 ret = btrfs_defrag_file(inode, NULL, &range, defrag->transid, in __btrfs_run_defrag_inode()
305 kmem_cache_free(btrfs_inode_defrag_cachep, defrag); in __btrfs_run_defrag_inode()
315 struct inode_defrag *defrag; in btrfs_run_defrag_inodes() local
330 defrag = btrfs_pick_defrag_inode(fs_info, root_objectid, in btrfs_run_defrag_inodes()
332 if (!defrag) { in btrfs_run_defrag_inodes()
342 first_ino = defrag->ino + 1; in btrfs_run_defrag_inodes()
343 root_objectid = defrag->root; in btrfs_run_defrag_inodes()
345 __btrfs_run_defrag_inode(fs_info, defrag); in btrfs_run_defrag_inodes()