summary refs log tree commit diff
path: root/fs/btrfs/free-space-cache.c
diff options
context:
space:
mode:
authorNikolay Borisov <nborisov@suse.com>2020-01-20 16:09:18 +0200
committerDavid Sterba <dsterba@suse.com>2020-03-23 17:01:38 +0100
commitfe119a6eeb670585e29dbe3932e00ad29ae8f5f9 (patch)
treec3ab314c012a314498e1a11f6901381884677b89 /fs/btrfs/free-space-cache.c
parent45bb5d6ae961cdfa84b4a151beb77b2a780b2456 (diff)
downloadlinux-fe119a6eeb670585e29dbe3932e00ad29ae8f5f9.tar.gz
btrfs: switch to per-transaction pinned extents
This commit flips the switch to start tracking/processing pinned extents
on a per-transaction basis. It mostly replaces all references from
btrfs_fs_info::(pinned_extents|freed_extents[]) to
btrfs_transaction::pinned_extents.

Two notable modifications that warrant explicit mention are changing
clean_pinned_extents to get a reference to the previously running
transaction. The other one is removal of call to
btrfs_destroy_pinned_extent since transactions are going to be cleaned
in btrfs_cleanup_one_transaction.

Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/free-space-cache.c')
-rw-r--r--fs/btrfs/free-space-cache.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/btrfs/free-space-cache.c b/fs/btrfs/free-space-cache.c
index 9d6372139547..bd9c4b5da549 100644
--- a/fs/btrfs/free-space-cache.c
+++ b/fs/btrfs/free-space-cache.c
@@ -1086,7 +1086,7 @@ static noinline_for_stack int write_pinned_extent_entries(
 	 * We shouldn't have switched the pinned extents yet so this is the
 	 * right one
 	 */
-	unpin = block_group->fs_info->pinned_extents;
+	unpin = &trans->transaction->pinned_extents;
 
 	start = block_group->start;