From 473d95b2d7580c28ec9d6f22078a2f79bb1d17ec Mon Sep 17 00:00:00 2001 From: Sasha Levin Date: Fri, 31 Mar 2023 15:07:55 -0400 Subject: [PATCH] Fixes for 6.1 Signed-off-by: Sasha Levin --- ...ialized-variable-warning-in-btrfs_up.patch | 41 ++++++++ ...ary-variable-for-space_info-in-btrfs.patch | 94 +++++++++++++++++++ queue-6.1/series | 2 + 3 files changed, 137 insertions(+) create mode 100644 queue-6.1/btrfs-fix-uninitialized-variable-warning-in-btrfs_up.patch create mode 100644 queue-6.1/btrfs-use-temporary-variable-for-space_info-in-btrfs.patch diff --git a/queue-6.1/btrfs-fix-uninitialized-variable-warning-in-btrfs_up.patch b/queue-6.1/btrfs-fix-uninitialized-variable-warning-in-btrfs_up.patch new file mode 100644 index 00000000000..c5f95c6f9fa --- /dev/null +++ b/queue-6.1/btrfs-fix-uninitialized-variable-warning-in-btrfs_up.patch @@ -0,0 +1,41 @@ +From 2e880066dc2d89fb15180ca190e4b113713d7719 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Fri, 16 Dec 2022 15:15:54 -0500 +Subject: btrfs: fix uninitialized variable warning in btrfs_update_block_group + +From: Josef Bacik + +[ Upstream commit efbf35a102b20246cfe4409c6ae92e72ecb67ab8 ] + +reclaim isn't set in the alloc case, however we only care about +reclaim in the !alloc case. This isn't an actual problem, however +-Wmaybe-uninitialized will complain, so initialize reclaim to quiet the +compiler. + +Reviewed-by: Qu Wenruo +Reviewed-by: Johannes Thumshirn +Signed-off-by: Josef Bacik +Reviewed-by: David Sterba +Signed-off-by: David Sterba +Stable-dep-of: df384da5a49c ("btrfs: use temporary variable for space_info in btrfs_update_block_group") +Signed-off-by: Sasha Levin +--- + fs/btrfs/block-group.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/fs/btrfs/block-group.c b/fs/btrfs/block-group.c +index 4b69945755e4f..380cb10f0d37b 100644 +--- a/fs/btrfs/block-group.c ++++ b/fs/btrfs/block-group.c +@@ -3259,7 +3259,7 @@ int btrfs_update_block_group(struct btrfs_trans_handle *trans, + spin_unlock(&info->delalloc_root_lock); + + while (total) { +- bool reclaim; ++ bool reclaim = false; + + cache = btrfs_lookup_block_group(info, bytenr); + if (!cache) { +-- +2.39.2 + diff --git a/queue-6.1/btrfs-use-temporary-variable-for-space_info-in-btrfs.patch b/queue-6.1/btrfs-use-temporary-variable-for-space_info-in-btrfs.patch new file mode 100644 index 00000000000..67002473b54 --- /dev/null +++ b/queue-6.1/btrfs-use-temporary-variable-for-space_info-in-btrfs.patch @@ -0,0 +1,94 @@ +From 91716e222b148daced7e09713bbb8db18c75e472 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Wed, 1 Mar 2023 16:14:43 -0500 +Subject: btrfs: use temporary variable for space_info in + btrfs_update_block_group + +From: Josef Bacik + +[ Upstream commit df384da5a49cace5c5e3100803dfd563fd982f93 ] + +We do + + cache->space_info->counter += num_bytes; + +everywhere in here. This is makes the lines longer than they need to +be, and will be especially noticeable when we add the active tracking in, +so add a temp variable for the space_info so this is cleaner. + +Reviewed-by: Naohiro Aota +Reviewed-by: Johannes Thumshirn +Reviewed-by: Anand Jain +Signed-off-by: Josef Bacik +Reviewed-by: David Sterba +Signed-off-by: David Sterba +Signed-off-by: Sasha Levin +--- + fs/btrfs/block-group.c | 22 ++++++++++++---------- + 1 file changed, 12 insertions(+), 10 deletions(-) + +diff --git a/fs/btrfs/block-group.c b/fs/btrfs/block-group.c +index 380cb10f0d37b..f33ddd5922b8c 100644 +--- a/fs/btrfs/block-group.c ++++ b/fs/btrfs/block-group.c +@@ -3259,6 +3259,7 @@ int btrfs_update_block_group(struct btrfs_trans_handle *trans, + spin_unlock(&info->delalloc_root_lock); + + while (total) { ++ struct btrfs_space_info *space_info; + bool reclaim = false; + + cache = btrfs_lookup_block_group(info, bytenr); +@@ -3266,6 +3267,7 @@ int btrfs_update_block_group(struct btrfs_trans_handle *trans, + ret = -ENOENT; + break; + } ++ space_info = cache->space_info; + factor = btrfs_bg_type_to_factor(cache->flags); + + /* +@@ -3280,7 +3282,7 @@ int btrfs_update_block_group(struct btrfs_trans_handle *trans, + byte_in_group = bytenr - cache->start; + WARN_ON(byte_in_group > cache->length); + +- spin_lock(&cache->space_info->lock); ++ spin_lock(&space_info->lock); + spin_lock(&cache->lock); + + if (btrfs_test_opt(info, SPACE_CACHE) && +@@ -3293,23 +3295,23 @@ int btrfs_update_block_group(struct btrfs_trans_handle *trans, + old_val += num_bytes; + cache->used = old_val; + cache->reserved -= num_bytes; +- cache->space_info->bytes_reserved -= num_bytes; +- cache->space_info->bytes_used += num_bytes; +- cache->space_info->disk_used += num_bytes * factor; ++ space_info->bytes_reserved -= num_bytes; ++ space_info->bytes_used += num_bytes; ++ space_info->disk_used += num_bytes * factor; + spin_unlock(&cache->lock); +- spin_unlock(&cache->space_info->lock); ++ spin_unlock(&space_info->lock); + } else { + old_val -= num_bytes; + cache->used = old_val; + cache->pinned += num_bytes; +- btrfs_space_info_update_bytes_pinned(info, +- cache->space_info, num_bytes); +- cache->space_info->bytes_used -= num_bytes; +- cache->space_info->disk_used -= num_bytes * factor; ++ btrfs_space_info_update_bytes_pinned(info, space_info, ++ num_bytes); ++ space_info->bytes_used -= num_bytes; ++ space_info->disk_used -= num_bytes * factor; + + reclaim = should_reclaim_block_group(cache, num_bytes); + spin_unlock(&cache->lock); +- spin_unlock(&cache->space_info->lock); ++ spin_unlock(&space_info->lock); + + set_extent_dirty(&trans->transaction->pinned_extents, + bytenr, bytenr + num_bytes - 1, +-- +2.39.2 + diff --git a/queue-6.1/series b/queue-6.1/series index d1252044b9a..34584a34a32 100644 --- a/queue-6.1/series +++ b/queue-6.1/series @@ -61,3 +61,5 @@ fbdev-au1200fb-fix-potential-divide-by-zero.patch tools-power-turbostat-fix-dev-cpu_dma_latency-warnin.patch tools-power-turbostat-fix-decoding-of-hwp_status.patch tracing-fix-wrong-return-in-kprobe_event_gen_test.c.patch +btrfs-fix-uninitialized-variable-warning-in-btrfs_up.patch +btrfs-use-temporary-variable-for-space_info-in-btrfs.patch -- 2.47.3