summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/delayed-inode.c
diff options
context:
space:
mode:
authorJeff Mahoney <jeffm@suse.com>2016-06-22 18:54:24 -0400
committerDavid Sterba <dsterba@suse.com>2016-12-06 10:06:59 -0500
commit2ff7e61e0d30ff166a2ae94575526bffe11fd1a8 (patch)
treea2b8aba1d10c010cc247f3e0866dcbd627e852f3 /fs/btrfs/delayed-inode.c
parentafdb571890615059ed4f0625209b379aff6cb08d (diff)
btrfs: take an fs_info directly when the root is not used otherwise
There are loads of functions in btrfs that accept a root parameter but only use it to obtain an fs_info pointer. Let's convert those to just accept an fs_info pointer directly. Signed-off-by: Jeff Mahoney <jeffm@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/delayed-inode.c')
-rw-r--r--fs/btrfs/delayed-inode.c84
1 files changed, 42 insertions, 42 deletions
diff --git a/fs/btrfs/delayed-inode.c b/fs/btrfs/delayed-inode.c
index c8ffceb2aff9..33ed79b8d6cc 100644
--- a/fs/btrfs/delayed-inode.c
+++ b/fs/btrfs/delayed-inode.c
@@ -529,10 +529,9 @@ static struct btrfs_delayed_item *__btrfs_next_delayed_item(
529} 529}
530 530
531static int btrfs_delayed_item_reserve_metadata(struct btrfs_trans_handle *trans, 531static int btrfs_delayed_item_reserve_metadata(struct btrfs_trans_handle *trans,
532 struct btrfs_root *root, 532 struct btrfs_fs_info *fs_info,
533 struct btrfs_delayed_item *item) 533 struct btrfs_delayed_item *item)
534{ 534{
535 struct btrfs_fs_info *fs_info = root->fs_info;
536 struct btrfs_block_rsv *src_rsv; 535 struct btrfs_block_rsv *src_rsv;
537 struct btrfs_block_rsv *dst_rsv; 536 struct btrfs_block_rsv *dst_rsv;
538 u64 num_bytes; 537 u64 num_bytes;
@@ -556,10 +555,9 @@ static int btrfs_delayed_item_reserve_metadata(struct btrfs_trans_handle *trans,
556 return ret; 555 return ret;
557} 556}
558 557
559static void btrfs_delayed_item_release_metadata(struct btrfs_root *root, 558static void btrfs_delayed_item_release_metadata(struct btrfs_fs_info *fs_info,
560 struct btrfs_delayed_item *item) 559 struct btrfs_delayed_item *item)
561{ 560{
562 struct btrfs_fs_info *fs_info = root->fs_info;
563 struct btrfs_block_rsv *rsv; 561 struct btrfs_block_rsv *rsv;
564 562
565 if (!item->bytes_reserved) 563 if (!item->bytes_reserved)
@@ -569,7 +567,7 @@ static void btrfs_delayed_item_release_metadata(struct btrfs_root *root,
569 trace_btrfs_space_reservation(fs_info, "delayed_item", 567 trace_btrfs_space_reservation(fs_info, "delayed_item",
570 item->key.objectid, item->bytes_reserved, 568 item->key.objectid, item->bytes_reserved,
571 0); 569 0);
572 btrfs_block_rsv_release(root, rsv, 570 btrfs_block_rsv_release(fs_info, rsv,
573 item->bytes_reserved); 571 item->bytes_reserved);
574} 572}
575 573
@@ -669,16 +667,15 @@ static int btrfs_delayed_inode_reserve_metadata(
669 if (release) { 667 if (release) {
670 trace_btrfs_space_reservation(fs_info, "delalloc", 668 trace_btrfs_space_reservation(fs_info, "delalloc",
671 btrfs_ino(inode), num_bytes, 0); 669 btrfs_ino(inode), num_bytes, 0);
672 btrfs_block_rsv_release(root, src_rsv, num_bytes); 670 btrfs_block_rsv_release(fs_info, src_rsv, num_bytes);
673 } 671 }
674 672
675 return ret; 673 return ret;
676} 674}
677 675
678static void btrfs_delayed_inode_release_metadata(struct btrfs_root *root, 676static void btrfs_delayed_inode_release_metadata(struct btrfs_fs_info *fs_info,
679 struct btrfs_delayed_node *node) 677 struct btrfs_delayed_node *node)
680{ 678{
681 struct btrfs_fs_info *fs_info = root->fs_info;
682 struct btrfs_block_rsv *rsv; 679 struct btrfs_block_rsv *rsv;
683 680
684 if (!node->bytes_reserved) 681 if (!node->bytes_reserved)
@@ -687,7 +684,7 @@ static void btrfs_delayed_inode_release_metadata(struct btrfs_root *root,
687 rsv = &fs_info->delayed_block_rsv; 684 rsv = &fs_info->delayed_block_rsv;
688 trace_btrfs_space_reservation(fs_info, "delayed_inode", 685 trace_btrfs_space_reservation(fs_info, "delayed_inode",
689 node->inode_id, node->bytes_reserved, 0); 686 node->inode_id, node->bytes_reserved, 0);
690 btrfs_block_rsv_release(root, rsv, 687 btrfs_block_rsv_release(fs_info, rsv,
691 node->bytes_reserved); 688 node->bytes_reserved);
692 node->bytes_reserved = 0; 689 node->bytes_reserved = 0;
693} 690}
@@ -700,6 +697,7 @@ static int btrfs_batch_insert_items(struct btrfs_root *root,
700 struct btrfs_path *path, 697 struct btrfs_path *path,
701 struct btrfs_delayed_item *item) 698 struct btrfs_delayed_item *item)
702{ 699{
700 struct btrfs_fs_info *fs_info = root->fs_info;
703 struct btrfs_delayed_item *curr, *next; 701 struct btrfs_delayed_item *curr, *next;
704 int free_space; 702 int free_space;
705 int total_data_size = 0, total_size = 0; 703 int total_data_size = 0, total_size = 0;
@@ -716,7 +714,7 @@ static int btrfs_batch_insert_items(struct btrfs_root *root,
716 BUG_ON(!path->nodes[0]); 714 BUG_ON(!path->nodes[0]);
717 715
718 leaf = path->nodes[0]; 716 leaf = path->nodes[0];
719 free_space = btrfs_leaf_free_space(root, leaf); 717 free_space = btrfs_leaf_free_space(fs_info, leaf);
720 INIT_LIST_HEAD(&head); 718 INIT_LIST_HEAD(&head);
721 719
722 next = item; 720 next = item;
@@ -789,7 +787,7 @@ static int btrfs_batch_insert_items(struct btrfs_root *root,
789 curr->data_len); 787 curr->data_len);
790 slot++; 788 slot++;
791 789
792 btrfs_delayed_item_release_metadata(root, curr); 790 btrfs_delayed_item_release_metadata(fs_info, curr);
793 791
794 list_del(&curr->tree_list); 792 list_del(&curr->tree_list);
795 btrfs_release_delayed_item(curr); 793 btrfs_release_delayed_item(curr);
@@ -811,6 +809,7 @@ static int btrfs_insert_delayed_item(struct btrfs_trans_handle *trans,
811 struct btrfs_path *path, 809 struct btrfs_path *path,
812 struct btrfs_delayed_item *delayed_item) 810 struct btrfs_delayed_item *delayed_item)
813{ 811{
812 struct btrfs_fs_info *fs_info = root->fs_info;
814 struct extent_buffer *leaf; 813 struct extent_buffer *leaf;
815 char *ptr; 814 char *ptr;
816 int ret; 815 int ret;
@@ -828,7 +827,7 @@ static int btrfs_insert_delayed_item(struct btrfs_trans_handle *trans,
828 delayed_item->data_len); 827 delayed_item->data_len);
829 btrfs_mark_buffer_dirty(leaf); 828 btrfs_mark_buffer_dirty(leaf);
830 829
831 btrfs_delayed_item_release_metadata(root, delayed_item); 830 btrfs_delayed_item_release_metadata(fs_info, delayed_item);
832 return 0; 831 return 0;
833} 832}
834 833
@@ -880,6 +879,7 @@ static int btrfs_batch_delete_items(struct btrfs_trans_handle *trans,
880 struct btrfs_path *path, 879 struct btrfs_path *path,
881 struct btrfs_delayed_item *item) 880 struct btrfs_delayed_item *item)
882{ 881{
882 struct btrfs_fs_info *fs_info = root->fs_info;
883 struct btrfs_delayed_item *curr, *next; 883 struct btrfs_delayed_item *curr, *next;
884 struct extent_buffer *leaf; 884 struct extent_buffer *leaf;
885 struct btrfs_key key; 885 struct btrfs_key key;
@@ -929,7 +929,7 @@ static int btrfs_batch_delete_items(struct btrfs_trans_handle *trans,
929 goto out; 929 goto out;
930 930
931 list_for_each_entry_safe(curr, next, &head, tree_list) { 931 list_for_each_entry_safe(curr, next, &head, tree_list) {
932 btrfs_delayed_item_release_metadata(root, curr); 932 btrfs_delayed_item_release_metadata(fs_info, curr);
933 list_del(&curr->tree_list); 933 list_del(&curr->tree_list);
934 btrfs_release_delayed_item(curr); 934 btrfs_release_delayed_item(curr);
935 } 935 }
@@ -1015,6 +1015,7 @@ static int __btrfs_update_delayed_inode(struct btrfs_trans_handle *trans,
1015 struct btrfs_path *path, 1015 struct btrfs_path *path,
1016 struct btrfs_delayed_node *node) 1016 struct btrfs_delayed_node *node)
1017{ 1017{
1018 struct btrfs_fs_info *fs_info = root->fs_info;
1018 struct btrfs_key key; 1019 struct btrfs_key key;
1019 struct btrfs_inode_item *inode_item; 1020 struct btrfs_inode_item *inode_item;
1020 struct extent_buffer *leaf; 1021 struct extent_buffer *leaf;
@@ -1071,7 +1072,7 @@ out:
1071no_iref: 1072no_iref:
1072 btrfs_release_path(path); 1073 btrfs_release_path(path);
1073err_out: 1074err_out:
1074 btrfs_delayed_inode_release_metadata(root, node); 1075 btrfs_delayed_inode_release_metadata(fs_info, node);
1075 btrfs_release_delayed_inode(node); 1076 btrfs_release_delayed_inode(node);
1076 1077
1077 return ret; 1078 return ret;
@@ -1136,9 +1137,8 @@ __btrfs_commit_inode_delayed_items(struct btrfs_trans_handle *trans,
1136 * outstanding delayed items cleaned up. 1137 * outstanding delayed items cleaned up.
1137 */ 1138 */
1138static int __btrfs_run_delayed_items(struct btrfs_trans_handle *trans, 1139static int __btrfs_run_delayed_items(struct btrfs_trans_handle *trans,
1139 struct btrfs_root *root, int nr) 1140 struct btrfs_fs_info *fs_info, int nr)
1140{ 1141{
1141 struct btrfs_fs_info *fs_info = root->fs_info;
1142 struct btrfs_delayed_root *delayed_root; 1142 struct btrfs_delayed_root *delayed_root;
1143 struct btrfs_delayed_node *curr_node, *prev_node; 1143 struct btrfs_delayed_node *curr_node, *prev_node;
1144 struct btrfs_path *path; 1144 struct btrfs_path *path;
@@ -1184,15 +1184,15 @@ static int __btrfs_run_delayed_items(struct btrfs_trans_handle *trans,
1184} 1184}
1185 1185
1186int btrfs_run_delayed_items(struct btrfs_trans_handle *trans, 1186int btrfs_run_delayed_items(struct btrfs_trans_handle *trans,
1187 struct btrfs_root *root) 1187 struct btrfs_fs_info *fs_info)
1188{ 1188{
1189 return __btrfs_run_delayed_items(trans, root, -1); 1189 return __btrfs_run_delayed_items(trans, fs_info, -1);
1190} 1190}
1191 1191
1192int btrfs_run_delayed_items_nr(struct btrfs_trans_handle *trans, 1192int btrfs_run_delayed_items_nr(struct btrfs_trans_handle *trans,
1193 struct btrfs_root *root, int nr) 1193 struct btrfs_fs_info *fs_info, int nr)
1194{ 1194{
1195 return __btrfs_run_delayed_items(trans, root, nr); 1195 return __btrfs_run_delayed_items(trans, fs_info, nr);
1196} 1196}
1197 1197
1198int btrfs_commit_inode_delayed_items(struct btrfs_trans_handle *trans, 1198int btrfs_commit_inode_delayed_items(struct btrfs_trans_handle *trans,
@@ -1235,6 +1235,7 @@ int btrfs_commit_inode_delayed_items(struct btrfs_trans_handle *trans,
1235 1235
1236int btrfs_commit_inode_delayed_inode(struct inode *inode) 1236int btrfs_commit_inode_delayed_inode(struct inode *inode)
1237{ 1237{
1238 struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
1238 struct btrfs_trans_handle *trans; 1239 struct btrfs_trans_handle *trans;
1239 struct btrfs_delayed_node *delayed_node = btrfs_get_delayed_node(inode); 1240 struct btrfs_delayed_node *delayed_node = btrfs_get_delayed_node(inode);
1240 struct btrfs_path *path; 1241 struct btrfs_path *path;
@@ -1266,7 +1267,7 @@ int btrfs_commit_inode_delayed_inode(struct inode *inode)
1266 path->leave_spinning = 1; 1267 path->leave_spinning = 1;
1267 1268
1268 block_rsv = trans->block_rsv; 1269 block_rsv = trans->block_rsv;
1269 trans->block_rsv = &delayed_node->root->fs_info->delayed_block_rsv; 1270 trans->block_rsv = &fs_info->delayed_block_rsv;
1270 1271
1271 mutex_lock(&delayed_node->mutex); 1272 mutex_lock(&delayed_node->mutex);
1272 if (test_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags)) 1273 if (test_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags))
@@ -1280,7 +1281,7 @@ int btrfs_commit_inode_delayed_inode(struct inode *inode)
1280 trans->block_rsv = block_rsv; 1281 trans->block_rsv = block_rsv;
1281trans_out: 1282trans_out:
1282 btrfs_end_transaction(trans, delayed_node->root); 1283 btrfs_end_transaction(trans, delayed_node->root);
1283 btrfs_btree_balance_dirty(delayed_node->root); 1284 btrfs_btree_balance_dirty(fs_info);
1284out: 1285out:
1285 btrfs_release_delayed_node(delayed_node); 1286 btrfs_release_delayed_node(delayed_node);
1286 1287
@@ -1345,7 +1346,7 @@ again:
1345 1346
1346 trans->block_rsv = block_rsv; 1347 trans->block_rsv = block_rsv;
1347 btrfs_end_transaction(trans, root); 1348 btrfs_end_transaction(trans, root);
1348 btrfs_btree_balance_dirty_nodelay(root); 1349 btrfs_btree_balance_dirty_nodelay(root->fs_info);
1349 1350
1350release_path: 1351release_path:
1351 btrfs_release_path(path); 1352 btrfs_release_path(path);
@@ -1402,12 +1403,9 @@ static int could_end_wait(struct btrfs_delayed_root *delayed_root, int seq)
1402 return 0; 1403 return 0;
1403} 1404}
1404 1405
1405void btrfs_balance_delayed_items(struct btrfs_root *root) 1406void btrfs_balance_delayed_items(struct btrfs_fs_info *fs_info)
1406{ 1407{
1407 struct btrfs_delayed_root *delayed_root; 1408 struct btrfs_delayed_root *delayed_root = fs_info->delayed_root;
1408 struct btrfs_fs_info *fs_info = root->fs_info;
1409
1410 delayed_root = fs_info->delayed_root;
1411 1409
1412 if (atomic_read(&delayed_root->items) < BTRFS_DELAYED_BACKGROUND) 1410 if (atomic_read(&delayed_root->items) < BTRFS_DELAYED_BACKGROUND)
1413 return; 1411 return;
@@ -1432,8 +1430,9 @@ void btrfs_balance_delayed_items(struct btrfs_root *root)
1432 1430
1433/* Will return 0 or -ENOMEM */ 1431/* Will return 0 or -ENOMEM */
1434int btrfs_insert_delayed_dir_index(struct btrfs_trans_handle *trans, 1432int btrfs_insert_delayed_dir_index(struct btrfs_trans_handle *trans,
1435 struct btrfs_root *root, const char *name, 1433 struct btrfs_fs_info *fs_info,
1436 int name_len, struct inode *dir, 1434 const char *name, int name_len,
1435 struct inode *dir,
1437 struct btrfs_disk_key *disk_key, u8 type, 1436 struct btrfs_disk_key *disk_key, u8 type,
1438 u64 index) 1437 u64 index)
1439{ 1438{
@@ -1464,7 +1463,7 @@ int btrfs_insert_delayed_dir_index(struct btrfs_trans_handle *trans,
1464 btrfs_set_stack_dir_type(dir_item, type); 1463 btrfs_set_stack_dir_type(dir_item, type);
1465 memcpy((char *)(dir_item + 1), name, name_len); 1464 memcpy((char *)(dir_item + 1), name, name_len);
1466 1465
1467 ret = btrfs_delayed_item_reserve_metadata(trans, root, delayed_item); 1466 ret = btrfs_delayed_item_reserve_metadata(trans, fs_info, delayed_item);
1468 /* 1467 /*
1469 * we have reserved enough space when we start a new transaction, 1468 * we have reserved enough space when we start a new transaction,
1470 * so reserving metadata failure is impossible 1469 * so reserving metadata failure is impossible
@@ -1475,7 +1474,7 @@ int btrfs_insert_delayed_dir_index(struct btrfs_trans_handle *trans,
1475 mutex_lock(&delayed_node->mutex); 1474 mutex_lock(&delayed_node->mutex);
1476 ret = __btrfs_add_delayed_insertion_item(delayed_node, delayed_item); 1475 ret = __btrfs_add_delayed_insertion_item(delayed_node, delayed_item);
1477 if (unlikely(ret)) { 1476 if (unlikely(ret)) {
1478 btrfs_err(root->fs_info, 1477 btrfs_err(fs_info,
1479 "err add delayed dir index item(name: %.*s) into the insertion tree of the delayed node(root id: %llu, inode id: %llu, errno: %d)", 1478 "err add delayed dir index item(name: %.*s) into the insertion tree of the delayed node(root id: %llu, inode id: %llu, errno: %d)",
1480 name_len, name, delayed_node->root->objectid, 1479 name_len, name, delayed_node->root->objectid,
1481 delayed_node->inode_id, ret); 1480 delayed_node->inode_id, ret);
@@ -1488,7 +1487,7 @@ release_node:
1488 return ret; 1487 return ret;
1489} 1488}
1490 1489
1491static int btrfs_delete_delayed_insertion_item(struct btrfs_root *root, 1490static int btrfs_delete_delayed_insertion_item(struct btrfs_fs_info *fs_info,
1492 struct btrfs_delayed_node *node, 1491 struct btrfs_delayed_node *node,
1493 struct btrfs_key *key) 1492 struct btrfs_key *key)
1494{ 1493{
@@ -1501,15 +1500,15 @@ static int btrfs_delete_delayed_insertion_item(struct btrfs_root *root,
1501 return 1; 1500 return 1;
1502 } 1501 }
1503 1502
1504 btrfs_delayed_item_release_metadata(root, item); 1503 btrfs_delayed_item_release_metadata(fs_info, item);
1505 btrfs_release_delayed_item(item); 1504 btrfs_release_delayed_item(item);
1506 mutex_unlock(&node->mutex); 1505 mutex_unlock(&node->mutex);
1507 return 0; 1506 return 0;
1508} 1507}
1509 1508
1510int btrfs_delete_delayed_dir_index(struct btrfs_trans_handle *trans, 1509int btrfs_delete_delayed_dir_index(struct btrfs_trans_handle *trans,
1511 struct btrfs_root *root, struct inode *dir, 1510 struct btrfs_fs_info *fs_info,
1512 u64 index) 1511 struct inode *dir, u64 index)
1513{ 1512{
1514 struct btrfs_delayed_node *node; 1513 struct btrfs_delayed_node *node;
1515 struct btrfs_delayed_item *item; 1514 struct btrfs_delayed_item *item;
@@ -1524,7 +1523,7 @@ int btrfs_delete_delayed_dir_index(struct btrfs_trans_handle *trans,
1524 item_key.type = BTRFS_DIR_INDEX_KEY; 1523 item_key.type = BTRFS_DIR_INDEX_KEY;
1525 item_key.offset = index; 1524 item_key.offset = index;
1526 1525
1527 ret = btrfs_delete_delayed_insertion_item(root, node, &item_key); 1526 ret = btrfs_delete_delayed_insertion_item(fs_info, node, &item_key);
1528 if (!ret) 1527 if (!ret)
1529 goto end; 1528 goto end;
1530 1529
@@ -1536,7 +1535,7 @@ int btrfs_delete_delayed_dir_index(struct btrfs_trans_handle *trans,
1536 1535
1537 item->key = item_key; 1536 item->key = item_key;
1538 1537
1539 ret = btrfs_delayed_item_reserve_metadata(trans, root, item); 1538 ret = btrfs_delayed_item_reserve_metadata(trans, fs_info, item);
1540 /* 1539 /*
1541 * we have reserved enough space when we start a new transaction, 1540 * we have reserved enough space when we start a new transaction,
1542 * so reserving metadata failure is impossible. 1541 * so reserving metadata failure is impossible.
@@ -1546,7 +1545,7 @@ int btrfs_delete_delayed_dir_index(struct btrfs_trans_handle *trans,
1546 mutex_lock(&node->mutex); 1545 mutex_lock(&node->mutex);
1547 ret = __btrfs_add_delayed_deletion_item(node, item); 1546 ret = __btrfs_add_delayed_deletion_item(node, item);
1548 if (unlikely(ret)) { 1547 if (unlikely(ret)) {
1549 btrfs_err(root->fs_info, 1548 btrfs_err(fs_info,
1550 "err add delayed dir index item(index: %llu) into the deletion tree of the delayed node(root id: %llu, inode id: %llu, errno: %d)", 1549 "err add delayed dir index item(index: %llu) into the deletion tree of the delayed node(root id: %llu, inode id: %llu, errno: %d)",
1551 index, node->root->objectid, node->inode_id, ret); 1550 index, node->root->objectid, node->inode_id, ret);
1552 BUG(); 1551 BUG();
@@ -1902,12 +1901,13 @@ release_node:
1902static void __btrfs_kill_delayed_node(struct btrfs_delayed_node *delayed_node) 1901static void __btrfs_kill_delayed_node(struct btrfs_delayed_node *delayed_node)
1903{ 1902{
1904 struct btrfs_root *root = delayed_node->root; 1903 struct btrfs_root *root = delayed_node->root;
1904 struct btrfs_fs_info *fs_info = root->fs_info;
1905 struct btrfs_delayed_item *curr_item, *prev_item; 1905 struct btrfs_delayed_item *curr_item, *prev_item;
1906 1906
1907 mutex_lock(&delayed_node->mutex); 1907 mutex_lock(&delayed_node->mutex);
1908 curr_item = __btrfs_first_delayed_insertion_item(delayed_node); 1908 curr_item = __btrfs_first_delayed_insertion_item(delayed_node);
1909 while (curr_item) { 1909 while (curr_item) {
1910 btrfs_delayed_item_release_metadata(root, curr_item); 1910 btrfs_delayed_item_release_metadata(fs_info, curr_item);
1911 prev_item = curr_item; 1911 prev_item = curr_item;
1912 curr_item = __btrfs_next_delayed_item(prev_item); 1912 curr_item = __btrfs_next_delayed_item(prev_item);
1913 btrfs_release_delayed_item(prev_item); 1913 btrfs_release_delayed_item(prev_item);
@@ -1915,7 +1915,7 @@ static void __btrfs_kill_delayed_node(struct btrfs_delayed_node *delayed_node)
1915 1915
1916 curr_item = __btrfs_first_delayed_deletion_item(delayed_node); 1916 curr_item = __btrfs_first_delayed_deletion_item(delayed_node);
1917 while (curr_item) { 1917 while (curr_item) {
1918 btrfs_delayed_item_release_metadata(root, curr_item); 1918 btrfs_delayed_item_release_metadata(fs_info, curr_item);
1919 prev_item = curr_item; 1919 prev_item = curr_item;
1920 curr_item = __btrfs_next_delayed_item(prev_item); 1920 curr_item = __btrfs_next_delayed_item(prev_item);
1921 btrfs_release_delayed_item(prev_item); 1921 btrfs_release_delayed_item(prev_item);
@@ -1925,7 +1925,7 @@ static void __btrfs_kill_delayed_node(struct btrfs_delayed_node *delayed_node)
1925 btrfs_release_delayed_iref(delayed_node); 1925 btrfs_release_delayed_iref(delayed_node);
1926 1926
1927 if (test_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags)) { 1927 if (test_bit(BTRFS_DELAYED_NODE_INODE_DIRTY, &delayed_node->flags)) {
1928 btrfs_delayed_inode_release_metadata(root, delayed_node); 1928 btrfs_delayed_inode_release_metadata(fs_info, delayed_node);
1929 btrfs_release_delayed_inode(delayed_node); 1929 btrfs_release_delayed_inode(delayed_node);
1930 } 1930 }
1931 mutex_unlock(&delayed_node->mutex); 1931 mutex_unlock(&delayed_node->mutex);