delayed_node 179 fs/btrfs/btrfs_inode.h struct btrfs_delayed_node *delayed_node; delayed_node 41 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node, delayed_node 44 fs/btrfs/delayed-inode.c delayed_node->root = root; delayed_node 45 fs/btrfs/delayed-inode.c delayed_node->inode_id = inode_id; delayed_node 46 fs/btrfs/delayed-inode.c refcount_set(&delayed_node->refs, 0); delayed_node 47 fs/btrfs/delayed-inode.c delayed_node->ins_root = RB_ROOT_CACHED; delayed_node 48 fs/btrfs/delayed-inode.c delayed_node->del_root = RB_ROOT_CACHED; delayed_node 49 fs/btrfs/delayed-inode.c mutex_init(&delayed_node->mutex); delayed_node 50 fs/btrfs/delayed-inode.c INIT_LIST_HEAD(&delayed_node->n_list); delayed_node 51 fs/btrfs/delayed-inode.c INIT_LIST_HEAD(&delayed_node->p_list); delayed_node 73 fs/btrfs/delayed-inode.c node = READ_ONCE(btrfs_inode->delayed_node); delayed_node 83 fs/btrfs/delayed-inode.c if (btrfs_inode->delayed_node) { delayed_node 85 fs/btrfs/delayed-inode.c BUG_ON(btrfs_inode->delayed_node != node); delayed_node 108 fs/btrfs/delayed-inode.c btrfs_inode->delayed_node = node; delayed_node 157 fs/btrfs/delayed-inode.c btrfs_inode->delayed_node = node; delayed_node 252 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node, delayed_node 257 fs/btrfs/delayed-inode.c if (!delayed_node) delayed_node 260 fs/btrfs/delayed-inode.c delayed_root = delayed_node->root->fs_info->delayed_root; delayed_node 262 fs/btrfs/delayed-inode.c mutex_lock(&delayed_node->mutex); delayed_node 263 fs/btrfs/delayed-inode.c if (delayed_node->count) delayed_node 264 fs/btrfs/delayed-inode.c btrfs_queue_delayed_node(delayed_root, delayed_node, mod); delayed_node 266 fs/btrfs/delayed-inode.c btrfs_dequeue_delayed_node(delayed_root, delayed_node); delayed_node 267 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 269 fs/btrfs/delayed-inode.c if (refcount_dec_and_test(&delayed_node->refs)) { delayed_node 270 fs/btrfs/delayed-inode.c struct btrfs_root *root = delayed_node->root; delayed_node 277 fs/btrfs/delayed-inode.c ASSERT(refcount_read(&delayed_node->refs) == 0); delayed_node 279 fs/btrfs/delayed-inode.c delayed_node->inode_id); delayed_node 281 fs/btrfs/delayed-inode.c kmem_cache_free(delayed_node_cache, delayed_node); delayed_node 324 fs/btrfs/delayed-inode.c item->delayed_node = NULL; delayed_node 392 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node, delayed_node 395 fs/btrfs/delayed-inode.c return __btrfs_lookup_delayed_item(&delayed_node->ins_root.rb_root, key, delayed_node 399 fs/btrfs/delayed-inode.c static int __btrfs_add_delayed_item(struct btrfs_delayed_node *delayed_node, delayed_node 411 fs/btrfs/delayed-inode.c root = &delayed_node->ins_root; delayed_node 413 fs/btrfs/delayed-inode.c root = &delayed_node->del_root; delayed_node 437 fs/btrfs/delayed-inode.c ins->delayed_node = delayed_node; delayed_node 442 fs/btrfs/delayed-inode.c ins->key.offset >= delayed_node->index_cnt) delayed_node 443 fs/btrfs/delayed-inode.c delayed_node->index_cnt = ins->key.offset + 1; delayed_node 445 fs/btrfs/delayed-inode.c delayed_node->count++; delayed_node 446 fs/btrfs/delayed-inode.c atomic_inc(&delayed_node->root->fs_info->delayed_root->items); delayed_node 480 fs/btrfs/delayed-inode.c if (!delayed_item->delayed_node) delayed_node 482 fs/btrfs/delayed-inode.c delayed_root = delayed_item->delayed_node->root->fs_info->delayed_root; delayed_node 489 fs/btrfs/delayed-inode.c root = &delayed_item->delayed_node->ins_root; delayed_node 491 fs/btrfs/delayed-inode.c root = &delayed_item->delayed_node->del_root; delayed_node 494 fs/btrfs/delayed-inode.c delayed_item->delayed_node->count--; delayed_node 509 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node) delayed_node 514 fs/btrfs/delayed-inode.c p = rb_first_cached(&delayed_node->ins_root); delayed_node 522 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node) delayed_node 527 fs/btrfs/delayed-inode.c p = rb_first_cached(&delayed_node->del_root); delayed_node 985 fs/btrfs/delayed-inode.c static void btrfs_release_delayed_inode(struct btrfs_delayed_node *delayed_node) delayed_node 989 fs/btrfs/delayed-inode.c if (delayed_node && delayed_node 990 fs/btrfs/delayed-inode.c test_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags)) { delayed_node 991 fs/btrfs/delayed-inode.c BUG_ON(!delayed_node->root); delayed_node 992 fs/btrfs/delayed-inode.c clear_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags); delayed_node 993 fs/btrfs/delayed-inode.c delayed_node->count--; delayed_node 995 fs/btrfs/delayed-inode.c delayed_root = delayed_node->root->fs_info->delayed_root; delayed_node 1000 fs/btrfs/delayed-inode.c static void btrfs_release_delayed_iref(struct btrfs_delayed_node *delayed_node) delayed_node 1004 fs/btrfs/delayed-inode.c ASSERT(delayed_node->root); delayed_node 1005 fs/btrfs/delayed-inode.c clear_bit(BTRFS_DELAYED_NODE_DEL_IREF, &delayed_node->flags); delayed_node 1006 fs/btrfs/delayed-inode.c delayed_node->count--; delayed_node 1008 fs/btrfs/delayed-inode.c delayed_root = delayed_node->root->fs_info->delayed_root; delayed_node 1204 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node = btrfs_get_delayed_node(inode); delayed_node 1209 fs/btrfs/delayed-inode.c if (!delayed_node) delayed_node 1212 fs/btrfs/delayed-inode.c mutex_lock(&delayed_node->mutex); delayed_node 1213 fs/btrfs/delayed-inode.c if (!delayed_node->count) { delayed_node 1214 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1215 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1218 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1222 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1228 fs/btrfs/delayed-inode.c trans->block_rsv = &delayed_node->root->fs_info->delayed_block_rsv; delayed_node 1230 fs/btrfs/delayed-inode.c ret = __btrfs_commit_inode_delayed_items(trans, path, delayed_node); delayed_node 1232 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1243 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node = btrfs_get_delayed_node(inode); delayed_node 1248 fs/btrfs/delayed-inode.c if (!delayed_node) delayed_node 1251 fs/btrfs/delayed-inode.c mutex_lock(&delayed_node->mutex); delayed_node 1252 fs/btrfs/delayed-inode.c if (!test_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags)) { delayed_node 1253 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1254 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1257 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1259 fs/btrfs/delayed-inode.c trans = btrfs_join_transaction(delayed_node->root); delayed_node 1275 fs/btrfs/delayed-inode.c mutex_lock(&delayed_node->mutex); delayed_node 1276 fs/btrfs/delayed-inode.c if (test_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags)) delayed_node 1277 fs/btrfs/delayed-inode.c ret = __btrfs_update_delayed_inode(trans, delayed_node->root, delayed_node 1278 fs/btrfs/delayed-inode.c path, delayed_node); delayed_node 1281 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1289 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1296 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node; delayed_node 1298 fs/btrfs/delayed-inode.c delayed_node = READ_ONCE(inode->delayed_node); delayed_node 1299 fs/btrfs/delayed-inode.c if (!delayed_node) delayed_node 1302 fs/btrfs/delayed-inode.c inode->delayed_node = NULL; delayed_node 1303 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1318 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node = NULL; delayed_node 1335 fs/btrfs/delayed-inode.c delayed_node = btrfs_first_prepared_delayed_node(delayed_root); delayed_node 1336 fs/btrfs/delayed-inode.c if (!delayed_node) delayed_node 1340 fs/btrfs/delayed-inode.c root = delayed_node->root; delayed_node 1345 fs/btrfs/delayed-inode.c btrfs_release_prepared_delayed_node(delayed_node); delayed_node 1353 fs/btrfs/delayed-inode.c __btrfs_commit_inode_delayed_items(trans, path, delayed_node); delayed_node 1360 fs/btrfs/delayed-inode.c btrfs_release_prepared_delayed_node(delayed_node); delayed_node 1442 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node; delayed_node 1447 fs/btrfs/delayed-inode.c delayed_node = btrfs_get_or_create_delayed_node(dir); delayed_node 1448 fs/btrfs/delayed-inode.c if (IS_ERR(delayed_node)) delayed_node 1449 fs/btrfs/delayed-inode.c return PTR_ERR(delayed_node); delayed_node 1476 fs/btrfs/delayed-inode.c mutex_lock(&delayed_node->mutex); delayed_node 1477 fs/btrfs/delayed-inode.c ret = __btrfs_add_delayed_insertion_item(delayed_node, delayed_item); delayed_node 1481 fs/btrfs/delayed-inode.c name_len, name, delayed_node->root->root_key.objectid, delayed_node 1482 fs/btrfs/delayed-inode.c delayed_node->inode_id, ret); delayed_node 1485 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1488 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1570 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node = btrfs_get_delayed_node(inode); delayed_node 1572 fs/btrfs/delayed-inode.c if (!delayed_node) delayed_node 1580 fs/btrfs/delayed-inode.c if (!delayed_node->index_cnt) { delayed_node 1581 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1585 fs/btrfs/delayed-inode.c inode->index_cnt = delayed_node->index_cnt; delayed_node 1586 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1594 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node; delayed_node 1597 fs/btrfs/delayed-inode.c delayed_node = btrfs_get_delayed_node(BTRFS_I(inode)); delayed_node 1598 fs/btrfs/delayed-inode.c if (!delayed_node) delayed_node 1608 fs/btrfs/delayed-inode.c mutex_lock(&delayed_node->mutex); delayed_node 1609 fs/btrfs/delayed-inode.c item = __btrfs_first_delayed_insertion_item(delayed_node); delayed_node 1616 fs/btrfs/delayed-inode.c item = __btrfs_first_delayed_deletion_item(delayed_node); delayed_node 1622 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1632 fs/btrfs/delayed-inode.c refcount_dec(&delayed_node->refs); delayed_node 1775 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node; delayed_node 1778 fs/btrfs/delayed-inode.c delayed_node = btrfs_get_delayed_node(BTRFS_I(inode)); delayed_node 1779 fs/btrfs/delayed-inode.c if (!delayed_node) delayed_node 1782 fs/btrfs/delayed-inode.c mutex_lock(&delayed_node->mutex); delayed_node 1783 fs/btrfs/delayed-inode.c if (!test_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags)) { delayed_node 1784 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1785 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1789 fs/btrfs/delayed-inode.c inode_item = &delayed_node->inode_item; delayed_node 1823 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1824 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1831 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node; delayed_node 1834 fs/btrfs/delayed-inode.c delayed_node = btrfs_get_or_create_delayed_node(BTRFS_I(inode)); delayed_node 1835 fs/btrfs/delayed-inode.c if (IS_ERR(delayed_node)) delayed_node 1836 fs/btrfs/delayed-inode.c return PTR_ERR(delayed_node); delayed_node 1838 fs/btrfs/delayed-inode.c mutex_lock(&delayed_node->mutex); delayed_node 1839 fs/btrfs/delayed-inode.c if (test_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags)) { delayed_node 1840 fs/btrfs/delayed-inode.c fill_stack_inode_item(trans, &delayed_node->inode_item, inode); delayed_node 1845 fs/btrfs/delayed-inode.c delayed_node); delayed_node 1849 fs/btrfs/delayed-inode.c fill_stack_inode_item(trans, &delayed_node->inode_item, inode); delayed_node 1850 fs/btrfs/delayed-inode.c set_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags); delayed_node 1851 fs/btrfs/delayed-inode.c delayed_node->count++; delayed_node 1854 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1855 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1862 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node; delayed_node 1872 fs/btrfs/delayed-inode.c delayed_node = btrfs_get_or_create_delayed_node(inode); delayed_node 1873 fs/btrfs/delayed-inode.c if (IS_ERR(delayed_node)) delayed_node 1874 fs/btrfs/delayed-inode.c return PTR_ERR(delayed_node); delayed_node 1890 fs/btrfs/delayed-inode.c mutex_lock(&delayed_node->mutex); delayed_node 1891 fs/btrfs/delayed-inode.c if (test_bit(BTRFS_DELAYED_NODE_DEL_IREF, &delayed_node->flags)) delayed_node 1894 fs/btrfs/delayed-inode.c set_bit(BTRFS_DELAYED_NODE_DEL_IREF, &delayed_node->flags); delayed_node 1895 fs/btrfs/delayed-inode.c delayed_node->count++; delayed_node 1898 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1899 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 1903 fs/btrfs/delayed-inode.c static void __btrfs_kill_delayed_node(struct btrfs_delayed_node *delayed_node) delayed_node 1905 fs/btrfs/delayed-inode.c struct btrfs_root *root = delayed_node->root; delayed_node 1909 fs/btrfs/delayed-inode.c mutex_lock(&delayed_node->mutex); delayed_node 1910 fs/btrfs/delayed-inode.c curr_item = __btrfs_first_delayed_insertion_item(delayed_node); delayed_node 1918 fs/btrfs/delayed-inode.c curr_item = __btrfs_first_delayed_deletion_item(delayed_node); delayed_node 1926 fs/btrfs/delayed-inode.c if (test_bit(BTRFS_DELAYED_NODE_DEL_IREF, &delayed_node->flags)) delayed_node 1927 fs/btrfs/delayed-inode.c btrfs_release_delayed_iref(delayed_node); delayed_node 1929 fs/btrfs/delayed-inode.c if (test_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags)) { delayed_node 1930 fs/btrfs/delayed-inode.c btrfs_delayed_inode_release_metadata(fs_info, delayed_node, false); delayed_node 1931 fs/btrfs/delayed-inode.c btrfs_release_delayed_inode(delayed_node); delayed_node 1933 fs/btrfs/delayed-inode.c mutex_unlock(&delayed_node->mutex); delayed_node 1938 fs/btrfs/delayed-inode.c struct btrfs_delayed_node *delayed_node; delayed_node 1940 fs/btrfs/delayed-inode.c delayed_node = btrfs_get_delayed_node(inode); delayed_node 1941 fs/btrfs/delayed-inode.c if (!delayed_node) delayed_node 1944 fs/btrfs/delayed-inode.c __btrfs_kill_delayed_node(delayed_node); delayed_node 1945 fs/btrfs/delayed-inode.c btrfs_release_delayed_node(delayed_node); delayed_node 69 fs/btrfs/delayed-inode.h struct btrfs_delayed_node *delayed_node; delayed_node 6259 fs/btrfs/inode.c if (BTRFS_I(inode)->delayed_node) delayed_node 9414 fs/btrfs/inode.c ei->delayed_node = NULL;