Lines Matching refs:tree

354 static void zswap_entry_put(struct zswap_tree *tree,  in zswap_entry_put()  argument
361 zswap_rb_erase(&tree->rbroot, entry); in zswap_entry_put()
853 struct zswap_tree *tree; in zswap_writeback_entry() local
869 tree = zswap_trees[swp_type(swpentry)]; in zswap_writeback_entry()
873 spin_lock(&tree->lock); in zswap_writeback_entry()
874 entry = zswap_entry_find_get(&tree->rbroot, offset); in zswap_writeback_entry()
877 spin_unlock(&tree->lock); in zswap_writeback_entry()
880 spin_unlock(&tree->lock); in zswap_writeback_entry()
922 spin_lock(&tree->lock); in zswap_writeback_entry()
924 zswap_entry_put(tree, entry); in zswap_writeback_entry()
933 if (entry == zswap_rb_search(&tree->rbroot, offset)) in zswap_writeback_entry()
934 zswap_entry_put(tree, entry); in zswap_writeback_entry()
935 spin_unlock(&tree->lock); in zswap_writeback_entry()
947 spin_lock(&tree->lock); in zswap_writeback_entry()
948 zswap_entry_put(tree, entry); in zswap_writeback_entry()
949 spin_unlock(&tree->lock); in zswap_writeback_entry()
1000 struct zswap_tree *tree = zswap_trees[type]; in zswap_frontswap_store() local
1016 if (!zswap_enabled || !tree) { in zswap_frontswap_store()
1106 spin_lock(&tree->lock); in zswap_frontswap_store()
1108 ret = zswap_rb_insert(&tree->rbroot, entry, &dupentry); in zswap_frontswap_store()
1112 zswap_rb_erase(&tree->rbroot, dupentry); in zswap_frontswap_store()
1113 zswap_entry_put(tree, dupentry); in zswap_frontswap_store()
1116 spin_unlock(&tree->lock); in zswap_frontswap_store()
1140 struct zswap_tree *tree = zswap_trees[type]; in zswap_frontswap_load() local
1148 spin_lock(&tree->lock); in zswap_frontswap_load()
1149 entry = zswap_entry_find_get(&tree->rbroot, offset); in zswap_frontswap_load()
1152 spin_unlock(&tree->lock); in zswap_frontswap_load()
1155 spin_unlock(&tree->lock); in zswap_frontswap_load()
1178 spin_lock(&tree->lock); in zswap_frontswap_load()
1179 zswap_entry_put(tree, entry); in zswap_frontswap_load()
1180 spin_unlock(&tree->lock); in zswap_frontswap_load()
1188 struct zswap_tree *tree = zswap_trees[type]; in zswap_frontswap_invalidate_page() local
1192 spin_lock(&tree->lock); in zswap_frontswap_invalidate_page()
1193 entry = zswap_rb_search(&tree->rbroot, offset); in zswap_frontswap_invalidate_page()
1196 spin_unlock(&tree->lock); in zswap_frontswap_invalidate_page()
1201 zswap_rb_erase(&tree->rbroot, entry); in zswap_frontswap_invalidate_page()
1204 zswap_entry_put(tree, entry); in zswap_frontswap_invalidate_page()
1206 spin_unlock(&tree->lock); in zswap_frontswap_invalidate_page()
1212 struct zswap_tree *tree = zswap_trees[type]; in zswap_frontswap_invalidate_area() local
1215 if (!tree) in zswap_frontswap_invalidate_area()
1219 spin_lock(&tree->lock); in zswap_frontswap_invalidate_area()
1220 rbtree_postorder_for_each_entry_safe(entry, n, &tree->rbroot, rbnode) in zswap_frontswap_invalidate_area()
1222 tree->rbroot = RB_ROOT; in zswap_frontswap_invalidate_area()
1223 spin_unlock(&tree->lock); in zswap_frontswap_invalidate_area()
1224 kfree(tree); in zswap_frontswap_invalidate_area()
1230 struct zswap_tree *tree; in zswap_frontswap_init() local
1232 tree = kzalloc(sizeof(*tree), GFP_KERNEL); in zswap_frontswap_init()
1233 if (!tree) { in zswap_frontswap_init()
1238 tree->rbroot = RB_ROOT; in zswap_frontswap_init()
1239 spin_lock_init(&tree->lock); in zswap_frontswap_init()
1240 zswap_trees[type] = tree; in zswap_frontswap_init()