Lines Matching defs:trans
490 static int btrfs_delayed_item_reserve_metadata(struct btrfs_trans_handle *trans,
495 struct btrfs_fs_info *fs_info = trans->fs_info;
499 if (!trans->bytes_reserved)
502 src_rsv = trans->block_rsv;
565 struct btrfs_trans_handle *trans,
575 src_rsv = trans->block_rsv;
589 if (!src_rsv || (!trans->bytes_reserved &&
646 static int btrfs_insert_delayed_item(struct btrfs_trans_handle *trans,
750 ret = btrfs_insert_empty_items(trans, root, path, &batch);
812 static int btrfs_insert_delayed_items(struct btrfs_trans_handle *trans,
828 ret = btrfs_insert_delayed_item(trans, root, path, curr);
835 static int btrfs_batch_delete_items(struct btrfs_trans_handle *trans,
889 ret = btrfs_del_items(trans, root, path, path->slots[0], nitems);
913 static int btrfs_delete_delayed_items(struct btrfs_trans_handle *trans,
935 ret = btrfs_search_slot(trans, root, &key, path, -1, 1);
955 ret = btrfs_batch_delete_items(trans, root, path, item);
1001 static int __btrfs_update_delayed_inode(struct btrfs_trans_handle *trans,
1022 ret = btrfs_lookup_inode(trans, root, path, &key, mod);
1033 btrfs_mark_buffer_dirty(trans, leaf);
1055 ret = btrfs_del_item(trans, root, path);
1069 btrfs_abort_transaction(trans, ret);
1079 ret = btrfs_search_slot(trans, root, &key, path, -1, 1);
1090 static inline int btrfs_update_delayed_inode(struct btrfs_trans_handle *trans,
1103 ret = __btrfs_update_delayed_inode(trans, root, path, node);
1109 __btrfs_commit_inode_delayed_items(struct btrfs_trans_handle *trans,
1115 ret = btrfs_insert_delayed_items(trans, path, node->root, node);
1119 ret = btrfs_delete_delayed_items(trans, path, node->root, node);
1123 ret = btrfs_update_delayed_inode(trans, node->root, path, node);
1133 static int __btrfs_run_delayed_items(struct btrfs_trans_handle *trans, int nr)
1135 struct btrfs_fs_info *fs_info = trans->fs_info;
1143 if (TRANS_ABORTED(trans))
1150 block_rsv = trans->block_rsv;
1151 trans->block_rsv = &fs_info->delayed_block_rsv;
1157 ret = __btrfs_commit_inode_delayed_items(trans, path,
1160 btrfs_abort_transaction(trans, ret);
1187 trans->block_rsv = block_rsv;
1192 int btrfs_run_delayed_items(struct btrfs_trans_handle *trans)
1194 return __btrfs_run_delayed_items(trans, -1);
1197 int btrfs_run_delayed_items_nr(struct btrfs_trans_handle *trans, int nr)
1199 return __btrfs_run_delayed_items(trans, nr);
1202 int btrfs_commit_inode_delayed_items(struct btrfs_trans_handle *trans,
1227 block_rsv = trans->block_rsv;
1228 trans->block_rsv = &delayed_node->root->fs_info->delayed_block_rsv;
1230 ret = __btrfs_commit_inode_delayed_items(trans, path, delayed_node);
1234 trans->block_rsv = block_rsv;
1242 struct btrfs_trans_handle *trans;
1259 trans = btrfs_join_transaction(delayed_node->root);
1260 if (IS_ERR(trans)) {
1261 ret = PTR_ERR(trans);
1271 block_rsv = trans->block_rsv;
1272 trans->block_rsv = &fs_info->delayed_block_rsv;
1276 ret = __btrfs_update_delayed_inode(trans, delayed_node->root,
1283 trans->block_rsv = block_rsv;
1285 btrfs_end_transaction(trans);
1315 struct btrfs_trans_handle *trans;
1340 trans = btrfs_join_transaction(root);
1341 if (IS_ERR(trans)) {
1348 block_rsv = trans->block_rsv;
1349 trans->block_rsv = &root->fs_info->delayed_block_rsv;
1351 __btrfs_commit_inode_delayed_items(trans, path, delayed_node);
1353 trans->block_rsv = block_rsv;
1354 btrfs_end_transaction(trans);
1433 static void btrfs_release_dir_index_item_space(struct btrfs_trans_handle *trans)
1435 struct btrfs_fs_info *fs_info = trans->fs_info;
1449 trans->transid, bytes, 0);
1450 btrfs_block_rsv_release(fs_info, trans->block_rsv, bytes, NULL);
1451 ASSERT(trans->bytes_reserved >= bytes);
1452 trans->bytes_reserved -= bytes;
1456 int btrfs_insert_delayed_dir_index(struct btrfs_trans_handle *trans,
1462 struct btrfs_fs_info *fs_info = trans->fs_info;
1487 btrfs_set_stack_dir_transid(dir_item, trans->transid);
1507 btrfs_err(trans->fs_info,
1513 btrfs_release_dir_index_item_space(trans);
1528 ret = btrfs_delayed_item_reserve_metadata(trans, delayed_item);
1542 btrfs_release_dir_index_item_space(trans);
1599 int btrfs_delete_delayed_dir_index(struct btrfs_trans_handle *trans,
1610 ret = btrfs_delete_delayed_insertion_item(trans->fs_info, node, index);
1622 ret = btrfs_delayed_item_reserve_metadata(trans, item);
1628 btrfs_err(trans->fs_info,
1637 btrfs_err(trans->fs_info,
1813 static void fill_stack_inode_item(struct btrfs_trans_handle *trans,
1829 btrfs_set_stack_inode_transid(inode_item, trans->transid);
1916 int btrfs_delayed_update_inode(struct btrfs_trans_handle *trans,
1929 fill_stack_inode_item(trans, &delayed_node->inode_item,
1934 ret = btrfs_delayed_inode_reserve_metadata(trans, root, delayed_node);
1938 fill_stack_inode_item(trans, &delayed_node->inode_item, &inode->vfs_inode);