public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/16] btrfs: remove fs_info argument from space_info functions
@ 2025-10-13 17:37 fdmanana
  2025-10-13 17:37 ` [PATCH 01/16] btrfs: remove fs_info argument from btrfs_try_granting_tickets() fdmanana
                   ` (18 more replies)
  0 siblings, 19 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:37 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need to pass fs_info since we can grab it from a space_info.
More details in the changelog, trivial patchset.

Filipe Manana (16):
  btrfs: remove fs_info argument from btrfs_try_granting_tickets()
  btrfs: remove fs_info argument from priority_reclaim_data_space()
  btrfs: remove fs_info argument from priority_reclaim_metadata_space()
  btrfs: remove fs_info argument from maybe_fail_all_tickets()
  btrfs: remove fs_info argument from calc_available_free_space()
  btrfs: remove fs_info argument from btrfs_can_overcommit()
  btrfs: remove fs_info argument from btrfs_dump_space_info()
  btrfs: remove fs_info argument from shrink_delalloc() and flush_space()
  btrfs: remove fs_info argument from btrfs_calc_reclaim_metadata_size()
  btrfs: remove fs_info argument from need_preemptive_reclaim()
  btrfs: remove fs_info argument from steal_from_global_rsv()
  btrfs: remove fs_info argument from handle_reserve_ticket()
  btrfs: remove fs_info argument from maybe_clamp_preempt()
  btrfs: fix parameter documentation for btrfs_reserve_data_bytes()
  btrfs: remove fs_info argument from __reserve_bytes()
  btrfs: remove fs_info argument from btrfs_reserve_metadata_bytes()

 fs/btrfs/block-group.c    |  15 ++--
 fs/btrfs/block-rsv.c      |  14 ++--
 fs/btrfs/delalloc-space.c |   4 +-
 fs/btrfs/delayed-ref.c    |   2 +-
 fs/btrfs/extent-tree.c    |   3 +-
 fs/btrfs/space-info.c     | 168 +++++++++++++++++---------------------
 fs/btrfs/space-info.h     |  14 ++--
 fs/btrfs/transaction.c    |   4 +-
 8 files changed, 101 insertions(+), 123 deletions(-)

-- 
2.47.2


^ permalink raw reply	[flat|nested] 20+ messages in thread

* [PATCH 01/16] btrfs: remove fs_info argument from btrfs_try_granting_tickets()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
@ 2025-10-13 17:37 ` fdmanana
  2025-10-13 17:37 ` [PATCH 02/16] btrfs: remove fs_info argument from priority_reclaim_data_space() fdmanana
                   ` (17 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:37 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/block-group.c |  4 ++--
 fs/btrfs/block-rsv.c   |  2 +-
 fs/btrfs/space-info.c  | 14 +++++++-------
 fs/btrfs/space-info.h  |  5 ++---
 4 files changed, 12 insertions(+), 13 deletions(-)

diff --git a/fs/btrfs/block-group.c b/fs/btrfs/block-group.c
index cd51f50a7c8b..07fc75f481ff 100644
--- a/fs/btrfs/block-group.c
+++ b/fs/btrfs/block-group.c
@@ -3836,7 +3836,7 @@ int btrfs_add_reserved_bytes(struct btrfs_block_group *cache,
 	 * that happens.
 	 */
 	if (num_bytes < ram_bytes)
-		btrfs_try_granting_tickets(cache->fs_info, space_info);
+		btrfs_try_granting_tickets(space_info);
 out:
 	spin_unlock(&cache->lock);
 	spin_unlock(&space_info->lock);
@@ -3874,7 +3874,7 @@ void btrfs_free_reserved_bytes(struct btrfs_block_group *cache, u64 num_bytes,
 		cache->delalloc_bytes -= num_bytes;
 	spin_unlock(&cache->lock);
 
-	btrfs_try_granting_tickets(cache->fs_info, space_info);
+	btrfs_try_granting_tickets(space_info);
 	spin_unlock(&space_info->lock);
 }
 
diff --git a/fs/btrfs/block-rsv.c b/fs/btrfs/block-rsv.c
index 5ad6de738aee..75cd35570a28 100644
--- a/fs/btrfs/block-rsv.c
+++ b/fs/btrfs/block-rsv.c
@@ -387,7 +387,7 @@ void btrfs_update_global_block_rsv(struct btrfs_fs_info *fs_info)
 		num_bytes = block_rsv->reserved - block_rsv->size;
 		btrfs_space_info_update_bytes_may_use(sinfo, -num_bytes);
 		block_rsv->reserved = block_rsv->size;
-		btrfs_try_granting_tickets(fs_info, sinfo);
+		btrfs_try_granting_tickets(sinfo);
 	}
 
 	block_rsv->full = (block_rsv->reserved == block_rsv->size);
diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 04a07d6f8537..50c7c240bb51 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -373,7 +373,7 @@ void btrfs_add_bg_to_space_info(struct btrfs_fs_info *info,
 	btrfs_space_info_update_bytes_zone_unusable(space_info, block_group->zone_unusable);
 	if (block_group->length > 0)
 		space_info->full = false;
-	btrfs_try_granting_tickets(info, space_info);
+	btrfs_try_granting_tickets(space_info);
 	spin_unlock(&space_info->lock);
 
 	block_group->space_info = space_info;
@@ -523,9 +523,9 @@ static void remove_ticket(struct btrfs_space_info *space_info,
  * This is for space we already have accounted in space_info->bytes_may_use, so
  * basically when we're returning space from block_rsv's.
  */
-void btrfs_try_granting_tickets(struct btrfs_fs_info *fs_info,
-				struct btrfs_space_info *space_info)
+void btrfs_try_granting_tickets(struct btrfs_space_info *space_info)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	struct list_head *head;
 	enum btrfs_reserve_flush_enum flush = BTRFS_RESERVE_NO_FLUSH;
 
@@ -1124,7 +1124,7 @@ static bool maybe_fail_all_tickets(struct btrfs_fs_info *fs_info,
 		 * the list.
 		 */
 		if (!aborted)
-			btrfs_try_granting_tickets(fs_info, space_info);
+			btrfs_try_granting_tickets(space_info);
 	}
 	return (tickets_id != space_info->tickets_id);
 }
@@ -1544,7 +1544,7 @@ static void priority_reclaim_metadata_space(struct btrfs_fs_info *fs_info,
 	 * ticket in front of a smaller ticket that can now be satisfied with
 	 * the available space.
 	 */
-	btrfs_try_granting_tickets(fs_info, space_info);
+	btrfs_try_granting_tickets(space_info);
 	spin_unlock(&space_info->lock);
 }
 
@@ -1572,7 +1572,7 @@ static void priority_reclaim_data_space(struct btrfs_fs_info *fs_info,
 
 	ticket->error = -ENOSPC;
 	remove_ticket(space_info, ticket);
-	btrfs_try_granting_tickets(fs_info, space_info);
+	btrfs_try_granting_tickets(space_info);
 	spin_unlock(&space_info->lock);
 }
 
@@ -2195,5 +2195,5 @@ void btrfs_return_free_space(struct btrfs_space_info *space_info, u64 len)
 grant:
 	/* Add to any tickets we may have. */
 	if (len)
-		btrfs_try_granting_tickets(fs_info, space_info);
+		btrfs_try_granting_tickets(space_info);
 }
diff --git a/fs/btrfs/space-info.h b/fs/btrfs/space-info.h
index a846f63585c9..596a1e923ddf 100644
--- a/fs/btrfs/space-info.h
+++ b/fs/btrfs/space-info.h
@@ -283,8 +283,7 @@ int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
 				 struct btrfs_space_info *space_info,
 				 u64 orig_bytes,
 				 enum btrfs_reserve_flush_enum flush);
-void btrfs_try_granting_tickets(struct btrfs_fs_info *fs_info,
-				struct btrfs_space_info *space_info);
+void btrfs_try_granting_tickets(struct btrfs_space_info *space_info);
 int btrfs_can_overcommit(struct btrfs_fs_info *fs_info,
 			 const struct btrfs_space_info *space_info, u64 bytes,
 			 enum btrfs_reserve_flush_enum flush);
@@ -295,7 +294,7 @@ static inline void btrfs_space_info_free_bytes_may_use(
 {
 	spin_lock(&space_info->lock);
 	btrfs_space_info_update_bytes_may_use(space_info, -num_bytes);
-	btrfs_try_granting_tickets(space_info->fs_info, space_info);
+	btrfs_try_granting_tickets(space_info);
 	spin_unlock(&space_info->lock);
 }
 int btrfs_reserve_data_bytes(struct btrfs_space_info *space_info, u64 bytes,
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 02/16] btrfs: remove fs_info argument from priority_reclaim_data_space()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
  2025-10-13 17:37 ` [PATCH 01/16] btrfs: remove fs_info argument from btrfs_try_granting_tickets() fdmanana
@ 2025-10-13 17:37 ` fdmanana
  2025-10-13 17:37 ` [PATCH 03/16] btrfs: remove fs_info argument from priority_reclaim_metadata_space() fdmanana
                   ` (16 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:37 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 50c7c240bb51..403cfadd7f9d 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -1548,10 +1548,11 @@ static void priority_reclaim_metadata_space(struct btrfs_fs_info *fs_info,
 	spin_unlock(&space_info->lock);
 }
 
-static void priority_reclaim_data_space(struct btrfs_fs_info *fs_info,
-					struct btrfs_space_info *space_info,
+static void priority_reclaim_data_space(struct btrfs_space_info *space_info,
 					struct reserve_ticket *ticket)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
+
 	spin_lock(&space_info->lock);
 
 	/* We could have been granted before we got here. */
@@ -1647,7 +1648,7 @@ static int handle_reserve_ticket(struct btrfs_fs_info *fs_info,
 						ARRAY_SIZE(evict_flush_states));
 		break;
 	case BTRFS_RESERVE_FLUSH_FREE_SPACE_INODE:
-		priority_reclaim_data_space(fs_info, space_info, ticket);
+		priority_reclaim_data_space(space_info, ticket);
 		break;
 	default:
 		ASSERT(0);
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 03/16] btrfs: remove fs_info argument from priority_reclaim_metadata_space()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
  2025-10-13 17:37 ` [PATCH 01/16] btrfs: remove fs_info argument from btrfs_try_granting_tickets() fdmanana
  2025-10-13 17:37 ` [PATCH 02/16] btrfs: remove fs_info argument from priority_reclaim_data_space() fdmanana
@ 2025-10-13 17:37 ` fdmanana
  2025-10-13 17:37 ` [PATCH 04/16] btrfs: remove fs_info argument from maybe_fail_all_tickets() fdmanana
                   ` (15 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:37 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 403cfadd7f9d..73ee2c63f3ef 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -1489,12 +1489,12 @@ static const enum btrfs_flush_state evict_flush_states[] = {
 	RESET_ZONES,
 };
 
-static void priority_reclaim_metadata_space(struct btrfs_fs_info *fs_info,
-				struct btrfs_space_info *space_info,
-				struct reserve_ticket *ticket,
-				const enum btrfs_flush_state *states,
-				int states_nr)
+static void priority_reclaim_metadata_space(struct btrfs_space_info *space_info,
+					    struct reserve_ticket *ticket,
+					    const enum btrfs_flush_state *states,
+					    int states_nr)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	u64 to_reclaim;
 	int flush_state = 0;
 
@@ -1638,12 +1638,12 @@ static int handle_reserve_ticket(struct btrfs_fs_info *fs_info,
 		wait_reserve_ticket(space_info, ticket);
 		break;
 	case BTRFS_RESERVE_FLUSH_LIMIT:
-		priority_reclaim_metadata_space(fs_info, space_info, ticket,
+		priority_reclaim_metadata_space(space_info, ticket,
 						priority_flush_states,
 						ARRAY_SIZE(priority_flush_states));
 		break;
 	case BTRFS_RESERVE_FLUSH_EVICT:
-		priority_reclaim_metadata_space(fs_info, space_info, ticket,
+		priority_reclaim_metadata_space(space_info, ticket,
 						evict_flush_states,
 						ARRAY_SIZE(evict_flush_states));
 		break;
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 04/16] btrfs: remove fs_info argument from maybe_fail_all_tickets()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (2 preceding siblings ...)
  2025-10-13 17:37 ` [PATCH 03/16] btrfs: remove fs_info argument from priority_reclaim_metadata_space() fdmanana
@ 2025-10-13 17:37 ` fdmanana
  2025-10-13 17:38 ` [PATCH 05/16] btrfs: remove fs_info argument from calc_available_free_space() fdmanana
                   ` (14 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:37 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 73ee2c63f3ef..1a2566676284 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -1071,7 +1071,6 @@ static bool steal_from_global_rsv(struct btrfs_fs_info *fs_info,
 /*
  * We've exhausted our flushing, start failing tickets.
  *
- * @fs_info - fs_info for this fs
  * @space_info - the space info we were flushing
  *
  * We call this when we've exhausted our flushing ability and haven't made
@@ -1084,9 +1083,9 @@ static bool steal_from_global_rsv(struct btrfs_fs_info *fs_info,
  * other tickets, or if it stumbles across a ticket that was smaller than the
  * first ticket.
  */
-static bool maybe_fail_all_tickets(struct btrfs_fs_info *fs_info,
-				   struct btrfs_space_info *space_info)
+static bool maybe_fail_all_tickets(struct btrfs_space_info *space_info)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	struct reserve_ticket *ticket;
 	u64 tickets_id = space_info->tickets_id;
 	const bool aborted = BTRFS_FS_ERROR(fs_info);
@@ -1197,7 +1196,7 @@ static void do_async_reclaim_metadata_space(struct btrfs_space_info *space_info)
 		if (flush_state > final_state) {
 			commit_cycles++;
 			if (commit_cycles > 2) {
-				if (maybe_fail_all_tickets(fs_info, space_info)) {
+				if (maybe_fail_all_tickets(space_info)) {
 					flush_state = FLUSH_DELAYED_ITEMS_NR;
 					commit_cycles--;
 				} else {
@@ -1425,7 +1424,7 @@ static void do_async_reclaim_data_space(struct btrfs_space_info *space_info)
 
 		if (flush_state >= ARRAY_SIZE(data_flush_states)) {
 			if (space_info->full) {
-				if (maybe_fail_all_tickets(fs_info, space_info))
+				if (maybe_fail_all_tickets(space_info))
 					flush_state = 0;
 				else
 					space_info->flush = false;
@@ -1443,7 +1442,7 @@ static void do_async_reclaim_data_space(struct btrfs_space_info *space_info)
 	return;
 
 aborted_fs:
-	maybe_fail_all_tickets(fs_info, space_info);
+	maybe_fail_all_tickets(space_info);
 	space_info->flush = false;
 	spin_unlock(&space_info->lock);
 }
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 05/16] btrfs: remove fs_info argument from calc_available_free_space()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (3 preceding siblings ...)
  2025-10-13 17:37 ` [PATCH 04/16] btrfs: remove fs_info argument from maybe_fail_all_tickets() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 06/16] btrfs: remove fs_info argument from btrfs_can_overcommit() fdmanana
                   ` (13 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 1a2566676284..88d715dcdb0e 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -421,10 +421,10 @@ static u64 calc_effective_data_chunk_size(struct btrfs_fs_info *fs_info)
 	return min_t(u64, data_chunk_size, SZ_1G);
 }
 
-static u64 calc_available_free_space(struct btrfs_fs_info *fs_info,
-			  const struct btrfs_space_info *space_info,
-			  enum btrfs_reserve_flush_enum flush)
+static u64 calc_available_free_space(const struct btrfs_space_info *space_info,
+				     enum btrfs_reserve_flush_enum flush)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	u64 profile;
 	u64 avail;
 	u64 data_chunk_size;
@@ -502,7 +502,7 @@ int btrfs_can_overcommit(struct btrfs_fs_info *fs_info,
 		return 0;
 
 	used = btrfs_space_info_used(space_info, true);
-	avail = calc_available_free_space(fs_info, space_info, flush);
+	avail = calc_available_free_space(space_info, flush);
 
 	if (used + bytes < space_info->total_bytes + avail)
 		return 1;
@@ -909,8 +909,7 @@ static u64 btrfs_calc_reclaim_metadata_size(struct btrfs_fs_info *fs_info,
 
 	lockdep_assert_held(&space_info->lock);
 
-	avail = calc_available_free_space(fs_info, space_info,
-					  BTRFS_RESERVE_FLUSH_ALL);
+	avail = calc_available_free_space(space_info, BTRFS_RESERVE_FLUSH_ALL);
 	used = btrfs_space_info_used(space_info, true);
 
 	/*
@@ -992,8 +991,7 @@ static bool need_preemptive_reclaim(struct btrfs_fs_info *fs_info,
 	 * much delalloc we need for the background flusher to kick in.
 	 */
 
-	thresh = calc_available_free_space(fs_info, space_info,
-					   BTRFS_RESERVE_FLUSH_ALL);
+	thresh = calc_available_free_space(space_info, BTRFS_RESERVE_FLUSH_ALL);
 	used = space_info->bytes_used + space_info->bytes_reserved +
 	       space_info->bytes_readonly + global_rsv_size;
 	if (used < space_info->total_bytes)
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 06/16] btrfs: remove fs_info argument from btrfs_can_overcommit()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (4 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 05/16] btrfs: remove fs_info argument from calc_available_free_space() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 07/16] btrfs: remove fs_info argument from btrfs_dump_space_info() fdmanana
                   ` (12 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/block-group.c | 3 +--
 fs/btrfs/space-info.c  | 9 +++------
 fs/btrfs/space-info.h  | 3 +--
 3 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/fs/btrfs/block-group.c b/fs/btrfs/block-group.c
index 07fc75f481ff..0a72056fd065 100644
--- a/fs/btrfs/block-group.c
+++ b/fs/btrfs/block-group.c
@@ -1403,8 +1403,7 @@ static int inc_block_group_ro(struct btrfs_block_group *cache, bool force)
 		 * BTRFS_RESERVE_NO_FLUSH to give ourselves the most amount of
 		 * leeway to allow us to mark this block group as read only.
 		 */
-		if (btrfs_can_overcommit(cache->fs_info, sinfo, num_bytes,
-					 BTRFS_RESERVE_NO_FLUSH))
+		if (btrfs_can_overcommit(sinfo, num_bytes, BTRFS_RESERVE_NO_FLUSH))
 			ret = 0;
 	}
 
diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 88d715dcdb0e..c473160d6e36 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -490,8 +490,7 @@ static u64 calc_available_free_space(const struct btrfs_space_info *space_info,
 	return avail;
 }
 
-int btrfs_can_overcommit(struct btrfs_fs_info *fs_info,
-			 const struct btrfs_space_info *space_info, u64 bytes,
+int btrfs_can_overcommit(const struct btrfs_space_info *space_info, u64 bytes,
 			 enum btrfs_reserve_flush_enum flush)
 {
 	u64 avail;
@@ -525,7 +524,6 @@ static void remove_ticket(struct btrfs_space_info *space_info,
  */
 void btrfs_try_granting_tickets(struct btrfs_space_info *space_info)
 {
-	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	struct list_head *head;
 	enum btrfs_reserve_flush_enum flush = BTRFS_RESERVE_NO_FLUSH;
 
@@ -541,8 +539,7 @@ void btrfs_try_granting_tickets(struct btrfs_space_info *space_info)
 
 		/* Check and see if our ticket can be satisfied now. */
 		if ((used + ticket->bytes <= space_info->total_bytes) ||
-		    btrfs_can_overcommit(fs_info, space_info, ticket->bytes,
-					 flush)) {
+		    btrfs_can_overcommit(space_info, ticket->bytes, flush)) {
 			btrfs_space_info_update_bytes_may_use(space_info, ticket->bytes);
 			remove_ticket(space_info, ticket);
 			ticket->bytes = 0;
@@ -1775,7 +1772,7 @@ static int __reserve_bytes(struct btrfs_fs_info *fs_info,
 	 */
 	if (!pending_tickets &&
 	    ((used + orig_bytes <= space_info->total_bytes) ||
-	     btrfs_can_overcommit(fs_info, space_info, orig_bytes, flush))) {
+	     btrfs_can_overcommit(space_info, orig_bytes, flush))) {
 		btrfs_space_info_update_bytes_may_use(space_info, orig_bytes);
 		ret = 0;
 	}
diff --git a/fs/btrfs/space-info.h b/fs/btrfs/space-info.h
index 596a1e923ddf..737e874a8c34 100644
--- a/fs/btrfs/space-info.h
+++ b/fs/btrfs/space-info.h
@@ -284,8 +284,7 @@ int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
 				 u64 orig_bytes,
 				 enum btrfs_reserve_flush_enum flush);
 void btrfs_try_granting_tickets(struct btrfs_space_info *space_info);
-int btrfs_can_overcommit(struct btrfs_fs_info *fs_info,
-			 const struct btrfs_space_info *space_info, u64 bytes,
+int btrfs_can_overcommit(const struct btrfs_space_info *space_info, u64 bytes,
 			 enum btrfs_reserve_flush_enum flush);
 
 static inline void btrfs_space_info_free_bytes_may_use(
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 07/16] btrfs: remove fs_info argument from btrfs_dump_space_info()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (5 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 06/16] btrfs: remove fs_info argument from btrfs_can_overcommit() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 08/16] btrfs: remove fs_info argument from shrink_delalloc() and flush_space() fdmanana
                   ` (11 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/block-group.c |  8 ++++----
 fs/btrfs/extent-tree.c |  3 +--
 fs/btrfs/space-info.c  | 18 +++++++++---------
 fs/btrfs/space-info.h  |  3 +--
 4 files changed, 15 insertions(+), 17 deletions(-)

diff --git a/fs/btrfs/block-group.c b/fs/btrfs/block-group.c
index 0a72056fd065..6220ecba4f43 100644
--- a/fs/btrfs/block-group.c
+++ b/fs/btrfs/block-group.c
@@ -1424,7 +1424,7 @@ static int inc_block_group_ro(struct btrfs_block_group *cache, bool force)
 	if (ret == -ENOSPC && btrfs_test_opt(cache->fs_info, ENOSPC_DEBUG)) {
 		btrfs_info(cache->fs_info,
 			"unable to make block group %llu ro", cache->start);
-		btrfs_dump_space_info(cache->fs_info, cache->space_info, 0, false);
+		btrfs_dump_space_info(cache->space_info, 0, false);
 	}
 	return ret;
 }
@@ -4314,7 +4314,7 @@ static void reserve_chunk_space(struct btrfs_trans_handle *trans,
 	if (left < bytes && btrfs_test_opt(fs_info, ENOSPC_DEBUG)) {
 		btrfs_info(fs_info, "left=%llu, need=%llu, flags=%llu",
 			   left, bytes, type);
-		btrfs_dump_space_info(fs_info, info, 0, false);
+		btrfs_dump_space_info(info, 0, false);
 	}
 
 	if (left < bytes) {
@@ -4459,7 +4459,7 @@ static void check_removing_space_info(struct btrfs_space_info *space_info)
 	 * indicates a real bug if this happens.
 	 */
 	if (WARN_ON(space_info->bytes_pinned > 0 || space_info->bytes_may_use > 0))
-		btrfs_dump_space_info(info, space_info, 0, false);
+		btrfs_dump_space_info(space_info, 0, false);
 
 	/*
 	 * If there was a failure to cleanup a log tree, very likely due to an
@@ -4470,7 +4470,7 @@ static void check_removing_space_info(struct btrfs_space_info *space_info)
 	if (!(space_info->flags & BTRFS_BLOCK_GROUP_METADATA) ||
 	    !BTRFS_FS_LOG_CLEANUP_ERROR(info)) {
 		if (WARN_ON(space_info->bytes_reserved > 0))
-			btrfs_dump_space_info(info, space_info, 0, false);
+			btrfs_dump_space_info(space_info, 0, false);
 	}
 
 	WARN_ON(space_info->reclaim_size > 0);
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index dc4ca98c3780..d1e75da97f58 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -4735,8 +4735,7 @@ int btrfs_reserve_extent(struct btrfs_root *root, u64 ram_bytes,
 	"allocation failed flags %llu, wanted %llu tree-log %d, relocation: %d",
 				  flags, num_bytes, for_treelog, for_data_reloc);
 			if (sinfo)
-				btrfs_dump_space_info(fs_info, sinfo,
-						      num_bytes, 1);
+				btrfs_dump_space_info(sinfo, num_bytes, 1);
 		}
 	}
 
diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index c473160d6e36..55ecb6eac242 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -591,9 +591,9 @@ static void dump_global_block_rsv(struct btrfs_fs_info *fs_info)
 	DUMP_BLOCK_RSV(fs_info, delayed_refs_rsv);
 }
 
-static void __btrfs_dump_space_info(const struct btrfs_fs_info *fs_info,
-				    const struct btrfs_space_info *info)
+static void __btrfs_dump_space_info(const struct btrfs_space_info *info)
 {
+	const struct btrfs_fs_info *fs_info = info->fs_info;
 	const char *flag_str = space_info_flag_to_str(info);
 	lockdep_assert_held(&info->lock);
 
@@ -610,16 +610,16 @@ static void __btrfs_dump_space_info(const struct btrfs_fs_info *fs_info,
 		info->bytes_readonly, info->bytes_zone_unusable);
 }
 
-void btrfs_dump_space_info(struct btrfs_fs_info *fs_info,
-			   struct btrfs_space_info *info, u64 bytes,
+void btrfs_dump_space_info(struct btrfs_space_info *info, u64 bytes,
 			   bool dump_block_groups)
 {
+	struct btrfs_fs_info *fs_info = info->fs_info;
 	struct btrfs_block_group *cache;
 	u64 total_avail = 0;
 	int index = 0;
 
 	spin_lock(&info->lock);
-	__btrfs_dump_space_info(fs_info, info);
+	__btrfs_dump_space_info(info);
 	dump_global_block_rsv(fs_info);
 	spin_unlock(&info->lock);
 
@@ -1089,7 +1089,7 @@ static bool maybe_fail_all_tickets(struct btrfs_space_info *space_info)
 
 	if (btrfs_test_opt(fs_info, ENOSPC_DEBUG)) {
 		btrfs_info(fs_info, "cannot satisfy tickets, dumping space info");
-		__btrfs_dump_space_info(fs_info, space_info);
+		__btrfs_dump_space_info(space_info);
 	}
 
 	while (!list_empty(&space_info->tickets) &&
@@ -1882,7 +1882,7 @@ int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
 					      space_info->flags, orig_bytes, 1);
 
 		if (btrfs_test_opt(fs_info, ENOSPC_DEBUG))
-			btrfs_dump_space_info(fs_info, space_info, orig_bytes, false);
+			btrfs_dump_space_info(space_info, orig_bytes, false);
 	}
 	return ret;
 }
@@ -1913,7 +1913,7 @@ int btrfs_reserve_data_bytes(struct btrfs_space_info *space_info, u64 bytes,
 		trace_btrfs_space_reservation(fs_info, "space_info:enospc",
 					      space_info->flags, bytes, 1);
 		if (btrfs_test_opt(fs_info, ENOSPC_DEBUG))
-			btrfs_dump_space_info(fs_info, space_info, bytes, false);
+			btrfs_dump_space_info(space_info, bytes, false);
 	}
 	return ret;
 }
@@ -1926,7 +1926,7 @@ __cold void btrfs_dump_space_info_for_trans_abort(struct btrfs_fs_info *fs_info)
 	btrfs_info(fs_info, "dumping space info:");
 	list_for_each_entry(space_info, &fs_info->space_info, list) {
 		spin_lock(&space_info->lock);
-		__btrfs_dump_space_info(fs_info, space_info);
+		__btrfs_dump_space_info(space_info);
 		spin_unlock(&space_info->lock);
 	}
 	dump_global_block_rsv(fs_info);
diff --git a/fs/btrfs/space-info.h b/fs/btrfs/space-info.h
index 737e874a8c34..a88cf71b3d3a 100644
--- a/fs/btrfs/space-info.h
+++ b/fs/btrfs/space-info.h
@@ -276,8 +276,7 @@ struct btrfs_space_info *btrfs_find_space_info(struct btrfs_fs_info *info,
 u64 __pure btrfs_space_info_used(const struct btrfs_space_info *s_info,
 			  bool may_use_included);
 void btrfs_clear_space_info_full(struct btrfs_fs_info *info);
-void btrfs_dump_space_info(struct btrfs_fs_info *fs_info,
-			   struct btrfs_space_info *info, u64 bytes,
+void btrfs_dump_space_info(struct btrfs_space_info *info, u64 bytes,
 			   bool dump_block_groups);
 int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
 				 struct btrfs_space_info *space_info,
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 08/16] btrfs: remove fs_info argument from shrink_delalloc() and flush_space()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (6 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 07/16] btrfs: remove fs_info argument from btrfs_dump_space_info() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 09/16] btrfs: remove fs_info argument from btrfs_calc_reclaim_metadata_size() fdmanana
                   ` (10 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 27 ++++++++++++---------------
 1 file changed, 12 insertions(+), 15 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 55ecb6eac242..4c144b3a4a4c 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -667,11 +667,11 @@ static inline u64 calc_reclaim_items_nr(const struct btrfs_fs_info *fs_info,
 /*
  * shrink metadata reservation for delalloc
  */
-static void shrink_delalloc(struct btrfs_fs_info *fs_info,
-			    struct btrfs_space_info *space_info,
+static void shrink_delalloc(struct btrfs_space_info *space_info,
 			    u64 to_reclaim, bool wait_ordered,
 			    bool for_preempt)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	struct btrfs_trans_handle *trans;
 	u64 delalloc_bytes;
 	u64 ordered_bytes;
@@ -798,10 +798,10 @@ static void shrink_delalloc(struct btrfs_fs_info *fs_info,
  * and may fail for various reasons. The caller is supposed to examine the
  * state of @space_info to detect the outcome.
  */
-static void flush_space(struct btrfs_fs_info *fs_info,
-		       struct btrfs_space_info *space_info, u64 num_bytes,
-		       enum btrfs_flush_state state, bool for_preempt)
+static void flush_space(struct btrfs_space_info *space_info, u64 num_bytes,
+			enum btrfs_flush_state state, bool for_preempt)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	struct btrfs_root *root = fs_info->tree_root;
 	struct btrfs_trans_handle *trans;
 	int nr;
@@ -830,7 +830,7 @@ static void flush_space(struct btrfs_fs_info *fs_info,
 	case FLUSH_DELALLOC_FULL:
 		if (state == FLUSH_DELALLOC_FULL)
 			num_bytes = U64_MAX;
-		shrink_delalloc(fs_info, space_info, num_bytes,
+		shrink_delalloc(space_info, num_bytes,
 				state != FLUSH_DELALLOC, for_preempt);
 		break;
 	case FLUSH_DELAYED_REFS_NR:
@@ -1149,7 +1149,7 @@ static void do_async_reclaim_metadata_space(struct btrfs_space_info *space_info)
 
 	flush_state = FLUSH_DELAYED_ITEMS_NR;
 	do {
-		flush_space(fs_info, space_info, to_reclaim, flush_state, false);
+		flush_space(space_info, to_reclaim, flush_state, false);
 		spin_lock(&space_info->lock);
 		if (list_empty(&space_info->tickets)) {
 			space_info->flush = false;
@@ -1312,7 +1312,7 @@ static void btrfs_preempt_reclaim_metadata_space(struct work_struct *work)
 		to_reclaim >>= 2;
 		if (!to_reclaim)
 			to_reclaim = btrfs_calc_insert_metadata_size(fs_info, 1);
-		flush_space(fs_info, space_info, to_reclaim, flush, true);
+		flush_space(space_info, to_reclaim, flush, true);
 		cond_resched();
 		spin_lock(&space_info->lock);
 	}
@@ -1385,7 +1385,7 @@ static void do_async_reclaim_data_space(struct btrfs_space_info *space_info)
 	spin_unlock(&space_info->lock);
 
 	while (!space_info->full) {
-		flush_space(fs_info, space_info, U64_MAX, ALLOC_CHUNK_FORCE, false);
+		flush_space(space_info, U64_MAX, ALLOC_CHUNK_FORCE, false);
 		spin_lock(&space_info->lock);
 		if (list_empty(&space_info->tickets)) {
 			space_info->flush = false;
@@ -1401,7 +1401,7 @@ static void do_async_reclaim_data_space(struct btrfs_space_info *space_info)
 	}
 
 	while (flush_state < ARRAY_SIZE(data_flush_states)) {
-		flush_space(fs_info, space_info, U64_MAX,
+		flush_space(space_info, U64_MAX,
 			    data_flush_states[flush_state], false);
 		spin_lock(&space_info->lock);
 		if (list_empty(&space_info->tickets)) {
@@ -1507,8 +1507,7 @@ static void priority_reclaim_metadata_space(struct btrfs_space_info *space_info,
 
 	while (flush_state < states_nr) {
 		spin_unlock(&space_info->lock);
-		flush_space(fs_info, space_info, to_reclaim, states[flush_state],
-			    false);
+		flush_space(space_info, to_reclaim, states[flush_state], false);
 		flush_state++;
 		spin_lock(&space_info->lock);
 		if (ticket->bytes == 0) {
@@ -1545,8 +1544,6 @@ static void priority_reclaim_metadata_space(struct btrfs_space_info *space_info,
 static void priority_reclaim_data_space(struct btrfs_space_info *space_info,
 					struct reserve_ticket *ticket)
 {
-	struct btrfs_fs_info *fs_info = space_info->fs_info;
-
 	spin_lock(&space_info->lock);
 
 	/* We could have been granted before we got here. */
@@ -1557,7 +1554,7 @@ static void priority_reclaim_data_space(struct btrfs_space_info *space_info,
 
 	while (!space_info->full) {
 		spin_unlock(&space_info->lock);
-		flush_space(fs_info, space_info, U64_MAX, ALLOC_CHUNK_FORCE, false);
+		flush_space(space_info, U64_MAX, ALLOC_CHUNK_FORCE, false);
 		spin_lock(&space_info->lock);
 		if (ticket->bytes == 0) {
 			spin_unlock(&space_info->lock);
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 09/16] btrfs: remove fs_info argument from btrfs_calc_reclaim_metadata_size()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (7 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 08/16] btrfs: remove fs_info argument from shrink_delalloc() and flush_space() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 10/16] btrfs: remove fs_info argument from need_preemptive_reclaim() fdmanana
                   ` (9 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 4c144b3a4a4c..0f619a588eb3 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -897,8 +897,7 @@ static void flush_space(struct btrfs_space_info *space_info, u64 num_bytes,
 	return;
 }
 
-static u64 btrfs_calc_reclaim_metadata_size(struct btrfs_fs_info *fs_info,
-					    const struct btrfs_space_info *space_info)
+static u64 btrfs_calc_reclaim_metadata_size(const struct btrfs_space_info *space_info)
 {
 	u64 used;
 	u64 avail;
@@ -1138,7 +1137,7 @@ static void do_async_reclaim_metadata_space(struct btrfs_space_info *space_info)
 		final_state = COMMIT_TRANS;
 
 	spin_lock(&space_info->lock);
-	to_reclaim = btrfs_calc_reclaim_metadata_size(fs_info, space_info);
+	to_reclaim = btrfs_calc_reclaim_metadata_size(space_info);
 	if (!to_reclaim) {
 		space_info->flush = false;
 		spin_unlock(&space_info->lock);
@@ -1156,8 +1155,7 @@ static void do_async_reclaim_metadata_space(struct btrfs_space_info *space_info)
 			spin_unlock(&space_info->lock);
 			return;
 		}
-		to_reclaim = btrfs_calc_reclaim_metadata_size(fs_info,
-							      space_info);
+		to_reclaim = btrfs_calc_reclaim_metadata_size(space_info);
 		if (last_tickets_id == space_info->tickets_id) {
 			flush_state++;
 		} else {
@@ -1493,7 +1491,7 @@ static void priority_reclaim_metadata_space(struct btrfs_space_info *space_info,
 	int flush_state = 0;
 
 	spin_lock(&space_info->lock);
-	to_reclaim = btrfs_calc_reclaim_metadata_size(fs_info, space_info);
+	to_reclaim = btrfs_calc_reclaim_metadata_size(space_info);
 	/*
 	 * This is the priority reclaim path, so to_reclaim could be >0 still
 	 * because we may have only satisfied the priority tickets and still
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 10/16] btrfs: remove fs_info argument from need_preemptive_reclaim()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (8 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 09/16] btrfs: remove fs_info argument from btrfs_calc_reclaim_metadata_size() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 11/16] btrfs: remove fs_info argument from steal_from_global_rsv() fdmanana
                   ` (8 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 0f619a588eb3..4249faa94116 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -920,9 +920,9 @@ static u64 btrfs_calc_reclaim_metadata_size(const struct btrfs_space_info *space
 	return to_reclaim;
 }
 
-static bool need_preemptive_reclaim(struct btrfs_fs_info *fs_info,
-				    const struct btrfs_space_info *space_info)
+static bool need_preemptive_reclaim(const struct btrfs_space_info *space_info)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	const u64 global_rsv_size = btrfs_block_rsv_reserved(&fs_info->global_block_rsv);
 	u64 ordered, delalloc;
 	u64 thresh;
@@ -1249,7 +1249,7 @@ static void btrfs_preempt_reclaim_metadata_space(struct work_struct *work)
 	trans_rsv = &fs_info->trans_block_rsv;
 
 	spin_lock(&space_info->lock);
-	while (need_preemptive_reclaim(fs_info, space_info)) {
+	while (need_preemptive_reclaim(space_info)) {
 		enum btrfs_flush_state flush;
 		u64 delalloc_size = 0;
 		u64 to_reclaim, block_rsv_size;
@@ -1834,7 +1834,7 @@ static int __reserve_bytes(struct btrfs_fs_info *fs_info,
 		 */
 		if (!test_bit(BTRFS_FS_LOG_RECOVERING, &fs_info->flags) &&
 		    !work_busy(&fs_info->preempt_reclaim_work) &&
-		    need_preemptive_reclaim(fs_info, space_info)) {
+		    need_preemptive_reclaim(space_info)) {
 			trace_btrfs_trigger_flush(fs_info, space_info->flags,
 						  orig_bytes, flush, "preempt");
 			queue_work(system_unbound_wq,
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 11/16] btrfs: remove fs_info argument from steal_from_global_rsv()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (9 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 10/16] btrfs: remove fs_info argument from need_preemptive_reclaim() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 12/16] btrfs: remove fs_info argument from handle_reserve_ticket() fdmanana
                   ` (7 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 4249faa94116..5c17f5234ef5 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -1031,10 +1031,10 @@ static bool need_preemptive_reclaim(const struct btrfs_space_info *space_info)
 		!test_bit(BTRFS_FS_STATE_REMOUNTING, &fs_info->fs_state));
 }
 
-static bool steal_from_global_rsv(struct btrfs_fs_info *fs_info,
-				  struct btrfs_space_info *space_info,
+static bool steal_from_global_rsv(struct btrfs_space_info *space_info,
 				  struct reserve_ticket *ticket)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	struct btrfs_block_rsv *global_rsv = &fs_info->global_block_rsv;
 	u64 min_bytes;
 
@@ -1096,7 +1096,7 @@ static bool maybe_fail_all_tickets(struct btrfs_space_info *space_info)
 		ticket = list_first_entry(&space_info->tickets,
 					  struct reserve_ticket, list);
 
-		if (!aborted && steal_from_global_rsv(fs_info, space_info, ticket))
+		if (!aborted && steal_from_global_rsv(space_info, ticket))
 			return true;
 
 		if (!aborted && btrfs_test_opt(fs_info, ENOSPC_DEBUG))
@@ -1525,7 +1525,7 @@ static void priority_reclaim_metadata_space(struct btrfs_space_info *space_info,
 	if (BTRFS_FS_ERROR(fs_info)) {
 		ticket->error = BTRFS_FS_ERROR(fs_info);
 		remove_ticket(space_info, ticket);
-	} else if (!steal_from_global_rsv(fs_info, space_info, ticket)) {
+	} else if (!steal_from_global_rsv(space_info, ticket)) {
 		ticket->error = -ENOSPC;
 		remove_ticket(space_info, ticket);
 	}
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 12/16] btrfs: remove fs_info argument from handle_reserve_ticket()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (10 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 11/16] btrfs: remove fs_info argument from steal_from_global_rsv() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 13/16] btrfs: remove fs_info argument from maybe_clamp_preempt() fdmanana
                   ` (6 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 5c17f5234ef5..778bf239a35f 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -1602,7 +1602,6 @@ static void wait_reserve_ticket(struct btrfs_space_info *space_info,
 /*
  * Do the appropriate flushing and waiting for a ticket.
  *
- * @fs_info:    the filesystem
  * @space_info: space info for the reservation
  * @ticket:     ticket for the reservation
  * @start_ns:   timestamp when the reservation started
@@ -1612,8 +1611,7 @@ static void wait_reserve_ticket(struct btrfs_space_info *space_info,
  * This does the work of figuring out how to flush for the ticket, waiting for
  * the reservation, and returning the appropriate error if there is one.
  */
-static int handle_reserve_ticket(struct btrfs_fs_info *fs_info,
-				 struct btrfs_space_info *space_info,
+static int handle_reserve_ticket(struct btrfs_space_info *space_info,
 				 struct reserve_ticket *ticket,
 				 u64 start_ns, u64 orig_bytes,
 				 enum btrfs_reserve_flush_enum flush)
@@ -1653,8 +1651,8 @@ static int handle_reserve_ticket(struct btrfs_fs_info *fs_info,
 	 * space wasn't reserved at all).
 	 */
 	ASSERT(!(ticket->bytes == 0 && ticket->error));
-	trace_btrfs_reserve_ticket(fs_info, space_info->flags, orig_bytes,
-				   start_ns, flush, ticket->error);
+	trace_btrfs_reserve_ticket(space_info->fs_info, space_info->flags,
+				   orig_bytes, start_ns, flush, ticket->error);
 	return ret;
 }
 
@@ -1845,8 +1843,7 @@ static int __reserve_bytes(struct btrfs_fs_info *fs_info,
 	if (!ret || !can_ticket(flush))
 		return ret;
 
-	return handle_reserve_ticket(fs_info, space_info, &ticket, start_ns,
-				     orig_bytes, flush);
+	return handle_reserve_ticket(space_info, &ticket, start_ns, orig_bytes, flush);
 }
 
 /*
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 13/16] btrfs: remove fs_info argument from maybe_clamp_preempt()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (11 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 12/16] btrfs: remove fs_info argument from handle_reserve_ticket() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 14/16] btrfs: fix parameter documentation for btrfs_reserve_data_bytes() fdmanana
                   ` (5 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 778bf239a35f..7e4e185fdcf5 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -1666,9 +1666,9 @@ static inline bool is_normal_flushing(enum btrfs_reserve_flush_enum flush)
 		(flush == BTRFS_RESERVE_FLUSH_ALL_STEAL);
 }
 
-static inline void maybe_clamp_preempt(struct btrfs_fs_info *fs_info,
-				       struct btrfs_space_info *space_info)
+static inline void maybe_clamp_preempt(struct btrfs_space_info *space_info)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	u64 ordered = percpu_counter_sum_positive(&fs_info->ordered_bytes);
 	u64 delalloc = percpu_counter_sum_positive(&fs_info->delalloc_bytes);
 
@@ -1811,7 +1811,7 @@ static int __reserve_bytes(struct btrfs_fs_info *fs_info,
 				 * preemptive flushing in order to keep up with
 				 * the workload.
 				 */
-				maybe_clamp_preempt(fs_info, space_info);
+				maybe_clamp_preempt(space_info);
 
 				space_info->flush = true;
 				trace_btrfs_trigger_flush(fs_info,
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 14/16] btrfs: fix parameter documentation for btrfs_reserve_data_bytes()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (12 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 13/16] btrfs: remove fs_info argument from maybe_clamp_preempt() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 15/16] btrfs: remove fs_info argument from __reserve_bytes() fdmanana
                   ` (4 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't have a fs_info argument anymore since commit 5d39fda880be
("btrfs: pass btrfs_space_info to btrfs_reserve_data_bytes()"), it
was replaced by a space_info argument. So update the documentation.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 7e4e185fdcf5..39eba78ed422 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -1882,7 +1882,7 @@ int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
 /*
  * Try to reserve data bytes for an allocation.
  *
- * @fs_info: the filesystem
+ * @space_info: the space_info we're allocating for
  * @bytes:   number of bytes we need
  * @flush:   how we are allowed to flush
  *
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 15/16] btrfs: remove fs_info argument from __reserve_bytes()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (13 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 14/16] btrfs: fix parameter documentation for btrfs_reserve_data_bytes() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 17:38 ` [PATCH 16/16] btrfs: remove fs_info argument from btrfs_reserve_metadata_bytes() fdmanana
                   ` (3 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/space-info.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index 39eba78ed422..d65b2e25d4b7 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -1703,7 +1703,6 @@ static inline bool can_ticket(enum btrfs_reserve_flush_enum flush)
 /*
  * Try to reserve bytes from the block_rsv's space.
  *
- * @fs_info:    the filesystem
  * @space_info: space info we want to allocate from
  * @orig_bytes: number of bytes we want
  * @flush:      whether or not we can flush to make our reservation
@@ -1715,10 +1714,10 @@ static inline bool can_ticket(enum btrfs_reserve_flush_enum flush)
  * regain reservations will be made and this will fail if there is not enough
  * space already.
  */
-static int __reserve_bytes(struct btrfs_fs_info *fs_info,
-			   struct btrfs_space_info *space_info, u64 orig_bytes,
+static int __reserve_bytes(struct btrfs_space_info *space_info, u64 orig_bytes,
 			   enum btrfs_reserve_flush_enum flush)
 {
+	struct btrfs_fs_info *fs_info = space_info->fs_info;
 	struct work_struct *async_work;
 	struct reserve_ticket ticket;
 	u64 start_ns = 0;
@@ -1868,7 +1867,7 @@ int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
 {
 	int ret;
 
-	ret = __reserve_bytes(fs_info, space_info, orig_bytes, flush);
+	ret = __reserve_bytes(space_info, orig_bytes, flush);
 	if (ret == -ENOSPC) {
 		trace_btrfs_space_reservation(fs_info, "space_info:enospc",
 					      space_info->flags, orig_bytes, 1);
@@ -1900,7 +1899,7 @@ int btrfs_reserve_data_bytes(struct btrfs_space_info *space_info, u64 bytes,
 	       flush == BTRFS_RESERVE_NO_FLUSH);
 	ASSERT(!current->journal_info || flush != BTRFS_RESERVE_FLUSH_DATA);
 
-	ret = __reserve_bytes(fs_info, space_info, bytes, flush);
+	ret = __reserve_bytes(space_info, bytes, flush);
 	if (ret == -ENOSPC) {
 		trace_btrfs_space_reservation(fs_info, "space_info:enospc",
 					      space_info->flags, bytes, 1);
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [PATCH 16/16] btrfs: remove fs_info argument from btrfs_reserve_metadata_bytes()
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (14 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 15/16] btrfs: remove fs_info argument from __reserve_bytes() fdmanana
@ 2025-10-13 17:38 ` fdmanana
  2025-10-13 21:28 ` [PATCH 00/16] btrfs: remove fs_info argument from space_info functions Qu Wenruo
                   ` (2 subsequent siblings)
  18 siblings, 0 replies; 20+ messages in thread
From: fdmanana @ 2025-10-13 17:38 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

We don't need it since we can grab fs_info from the given space_info.
So remove the fs_info argument.

Signed-off-by: Filipe Manana <fdmanana@suse.com>
---
 fs/btrfs/block-rsv.c      | 12 +++++-------
 fs/btrfs/delalloc-space.c |  4 ++--
 fs/btrfs/delayed-ref.c    |  2 +-
 fs/btrfs/space-info.c     |  6 +++---
 fs/btrfs/space-info.h     |  3 +--
 fs/btrfs/transaction.c    |  4 ++--
 6 files changed, 14 insertions(+), 17 deletions(-)

diff --git a/fs/btrfs/block-rsv.c b/fs/btrfs/block-rsv.c
index 75cd35570a28..96cf7a162987 100644
--- a/fs/btrfs/block-rsv.c
+++ b/fs/btrfs/block-rsv.c
@@ -218,8 +218,7 @@ int btrfs_block_rsv_add(struct btrfs_fs_info *fs_info,
 	if (num_bytes == 0)
 		return 0;
 
-	ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info,
-					   num_bytes, flush);
+	ret = btrfs_reserve_metadata_bytes(block_rsv->space_info, num_bytes, flush);
 	if (!ret)
 		btrfs_block_rsv_add_bytes(block_rsv, num_bytes, true);
 
@@ -259,8 +258,7 @@ int btrfs_block_rsv_refill(struct btrfs_fs_info *fs_info,
 	if (!ret)
 		return 0;
 
-	ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info,
-					   num_bytes, flush);
+	ret = btrfs_reserve_metadata_bytes(block_rsv->space_info, num_bytes, flush);
 	if (!ret) {
 		btrfs_block_rsv_add_bytes(block_rsv, num_bytes, false);
 		return 0;
@@ -530,8 +528,8 @@ struct btrfs_block_rsv *btrfs_use_block_rsv(struct btrfs_trans_handle *trans,
 				block_rsv->type, ret);
 	}
 try_reserve:
-	ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info,
-					   blocksize, BTRFS_RESERVE_NO_FLUSH);
+	ret = btrfs_reserve_metadata_bytes(block_rsv->space_info, blocksize,
+					   BTRFS_RESERVE_NO_FLUSH);
 	if (!ret)
 		return block_rsv;
 	/*
@@ -552,7 +550,7 @@ struct btrfs_block_rsv *btrfs_use_block_rsv(struct btrfs_trans_handle *trans,
 	 * one last time to force a reservation if there's enough actual space
 	 * on disk to make the reservation.
 	 */
-	ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info, blocksize,
+	ret = btrfs_reserve_metadata_bytes(block_rsv->space_info, blocksize,
 					   BTRFS_RESERVE_FLUSH_EMERGENCY);
 	if (!ret)
 		return block_rsv;
diff --git a/fs/btrfs/delalloc-space.c b/fs/btrfs/delalloc-space.c
index 288e1776c02d..0970799d0aa4 100644
--- a/fs/btrfs/delalloc-space.c
+++ b/fs/btrfs/delalloc-space.c
@@ -358,8 +358,8 @@ int btrfs_delalloc_reserve_metadata(struct btrfs_inode *inode, u64 num_bytes,
 						 noflush);
 	if (ret)
 		return ret;
-	ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info,
-					   meta_reserve, flush);
+	ret = btrfs_reserve_metadata_bytes(block_rsv->space_info, meta_reserve,
+					   flush);
 	if (ret) {
 		btrfs_qgroup_free_meta_prealloc(root, qgroup_reserve);
 		return ret;
diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
index f8fc26272f76..e8bc37453336 100644
--- a/fs/btrfs/delayed-ref.c
+++ b/fs/btrfs/delayed-ref.c
@@ -228,7 +228,7 @@ int btrfs_delayed_refs_rsv_refill(struct btrfs_fs_info *fs_info,
 	if (!num_bytes)
 		return 0;
 
-	ret = btrfs_reserve_metadata_bytes(fs_info, space_info, num_bytes, flush);
+	ret = btrfs_reserve_metadata_bytes(space_info, num_bytes, flush);
 	if (ret)
 		return ret;
 
diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index d65b2e25d4b7..dba28e969f65 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -1848,7 +1848,6 @@ static int __reserve_bytes(struct btrfs_space_info *space_info, u64 orig_bytes,
 /*
  * Try to reserve metadata bytes from the block_rsv's space.
  *
- * @fs_info:    the filesystem
  * @space_info: the space_info we're allocating for
  * @orig_bytes: number of bytes we want
  * @flush:      whether or not we can flush to make our reservation
@@ -1860,8 +1859,7 @@ static int __reserve_bytes(struct btrfs_space_info *space_info, u64 orig_bytes,
  * regain reservations will be made and this will fail if there is not enough
  * space already.
  */
-int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
-				 struct btrfs_space_info *space_info,
+int btrfs_reserve_metadata_bytes(struct btrfs_space_info *space_info,
 				 u64 orig_bytes,
 				 enum btrfs_reserve_flush_enum flush)
 {
@@ -1869,6 +1867,8 @@ int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
 
 	ret = __reserve_bytes(space_info, orig_bytes, flush);
 	if (ret == -ENOSPC) {
+		struct btrfs_fs_info *fs_info = space_info->fs_info;
+
 		trace_btrfs_space_reservation(fs_info, "space_info:enospc",
 					      space_info->flags, orig_bytes, 1);
 
diff --git a/fs/btrfs/space-info.h b/fs/btrfs/space-info.h
index a88cf71b3d3a..2fad2e4c2252 100644
--- a/fs/btrfs/space-info.h
+++ b/fs/btrfs/space-info.h
@@ -278,8 +278,7 @@ u64 __pure btrfs_space_info_used(const struct btrfs_space_info *s_info,
 void btrfs_clear_space_info_full(struct btrfs_fs_info *info);
 void btrfs_dump_space_info(struct btrfs_space_info *info, u64 bytes,
 			   bool dump_block_groups);
-int btrfs_reserve_metadata_bytes(struct btrfs_fs_info *fs_info,
-				 struct btrfs_space_info *space_info,
+int btrfs_reserve_metadata_bytes(struct btrfs_space_info *space_info,
 				 u64 orig_bytes,
 				 enum btrfs_reserve_flush_enum flush);
 void btrfs_try_granting_tickets(struct btrfs_space_info *space_info);
diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c
index 89ae0c7a610a..6607e354eae5 100644
--- a/fs/btrfs/transaction.c
+++ b/fs/btrfs/transaction.c
@@ -575,7 +575,7 @@ static int btrfs_reserve_trans_metadata(struct btrfs_fs_info *fs_info,
 	 * We want to reserve all the bytes we may need all at once, so we only
 	 * do 1 enospc flushing cycle per transaction start.
 	 */
-	ret = btrfs_reserve_metadata_bytes(fs_info, si, bytes, flush);
+	ret = btrfs_reserve_metadata_bytes(si, bytes, flush);
 
 	/*
 	 * If we are an emergency flush, which can steal from the global block
@@ -585,7 +585,7 @@ static int btrfs_reserve_trans_metadata(struct btrfs_fs_info *fs_info,
 	if (ret && flush == BTRFS_RESERVE_FLUSH_ALL_STEAL) {
 		bytes -= *delayed_refs_bytes;
 		*delayed_refs_bytes = 0;
-		ret = btrfs_reserve_metadata_bytes(fs_info, si, bytes, flush);
+		ret = btrfs_reserve_metadata_bytes(si, bytes, flush);
 	}
 
 	return ret;
-- 
2.47.2


^ permalink raw reply related	[flat|nested] 20+ messages in thread

* Re: [PATCH 00/16] btrfs: remove fs_info argument from space_info functions
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (15 preceding siblings ...)
  2025-10-13 17:38 ` [PATCH 16/16] btrfs: remove fs_info argument from btrfs_reserve_metadata_bytes() fdmanana
@ 2025-10-13 21:28 ` Qu Wenruo
  2025-10-14  7:08 ` Johannes Thumshirn
  2025-10-15  8:59 ` Anand Jain
  18 siblings, 0 replies; 20+ messages in thread
From: Qu Wenruo @ 2025-10-13 21:28 UTC (permalink / raw)
  To: fdmanana, linux-btrfs



在 2025/10/14 04:07, fdmanana@kernel.org 写道:
> From: Filipe Manana <fdmanana@suse.com>
> 
> We don't need to pass fs_info since we can grab it from a space_info.
> More details in the changelog, trivial patchset.

Reviewed-by: Qu Wenruo <wqu@suse.com>

Thanks,
Qu

> 
> Filipe Manana (16):
>    btrfs: remove fs_info argument from btrfs_try_granting_tickets()
>    btrfs: remove fs_info argument from priority_reclaim_data_space()
>    btrfs: remove fs_info argument from priority_reclaim_metadata_space()
>    btrfs: remove fs_info argument from maybe_fail_all_tickets()
>    btrfs: remove fs_info argument from calc_available_free_space()
>    btrfs: remove fs_info argument from btrfs_can_overcommit()
>    btrfs: remove fs_info argument from btrfs_dump_space_info()
>    btrfs: remove fs_info argument from shrink_delalloc() and flush_space()
>    btrfs: remove fs_info argument from btrfs_calc_reclaim_metadata_size()
>    btrfs: remove fs_info argument from need_preemptive_reclaim()
>    btrfs: remove fs_info argument from steal_from_global_rsv()
>    btrfs: remove fs_info argument from handle_reserve_ticket()
>    btrfs: remove fs_info argument from maybe_clamp_preempt()
>    btrfs: fix parameter documentation for btrfs_reserve_data_bytes()
>    btrfs: remove fs_info argument from __reserve_bytes()
>    btrfs: remove fs_info argument from btrfs_reserve_metadata_bytes()
> 
>   fs/btrfs/block-group.c    |  15 ++--
>   fs/btrfs/block-rsv.c      |  14 ++--
>   fs/btrfs/delalloc-space.c |   4 +-
>   fs/btrfs/delayed-ref.c    |   2 +-
>   fs/btrfs/extent-tree.c    |   3 +-
>   fs/btrfs/space-info.c     | 168 +++++++++++++++++---------------------
>   fs/btrfs/space-info.h     |  14 ++--
>   fs/btrfs/transaction.c    |   4 +-
>   8 files changed, 101 insertions(+), 123 deletions(-)
> 


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH 00/16] btrfs: remove fs_info argument from space_info functions
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (16 preceding siblings ...)
  2025-10-13 21:28 ` [PATCH 00/16] btrfs: remove fs_info argument from space_info functions Qu Wenruo
@ 2025-10-14  7:08 ` Johannes Thumshirn
  2025-10-15  8:59 ` Anand Jain
  18 siblings, 0 replies; 20+ messages in thread
From: Johannes Thumshirn @ 2025-10-14  7:08 UTC (permalink / raw)
  To: fdmanana@kernel.org, linux-btrfs@vger.kernel.org

Looks good,

Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>


^ permalink raw reply	[flat|nested] 20+ messages in thread

* Re: [PATCH 00/16] btrfs: remove fs_info argument from space_info functions
  2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
                   ` (17 preceding siblings ...)
  2025-10-14  7:08 ` Johannes Thumshirn
@ 2025-10-15  8:59 ` Anand Jain
  18 siblings, 0 replies; 20+ messages in thread
From: Anand Jain @ 2025-10-15  8:59 UTC (permalink / raw)
  To: fdmanana, linux-btrfs


Reviewed-by: Anand Jain <asj@kernel.org>


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2025-10-15  8:59 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-13 17:37 [PATCH 00/16] btrfs: remove fs_info argument from space_info functions fdmanana
2025-10-13 17:37 ` [PATCH 01/16] btrfs: remove fs_info argument from btrfs_try_granting_tickets() fdmanana
2025-10-13 17:37 ` [PATCH 02/16] btrfs: remove fs_info argument from priority_reclaim_data_space() fdmanana
2025-10-13 17:37 ` [PATCH 03/16] btrfs: remove fs_info argument from priority_reclaim_metadata_space() fdmanana
2025-10-13 17:37 ` [PATCH 04/16] btrfs: remove fs_info argument from maybe_fail_all_tickets() fdmanana
2025-10-13 17:38 ` [PATCH 05/16] btrfs: remove fs_info argument from calc_available_free_space() fdmanana
2025-10-13 17:38 ` [PATCH 06/16] btrfs: remove fs_info argument from btrfs_can_overcommit() fdmanana
2025-10-13 17:38 ` [PATCH 07/16] btrfs: remove fs_info argument from btrfs_dump_space_info() fdmanana
2025-10-13 17:38 ` [PATCH 08/16] btrfs: remove fs_info argument from shrink_delalloc() and flush_space() fdmanana
2025-10-13 17:38 ` [PATCH 09/16] btrfs: remove fs_info argument from btrfs_calc_reclaim_metadata_size() fdmanana
2025-10-13 17:38 ` [PATCH 10/16] btrfs: remove fs_info argument from need_preemptive_reclaim() fdmanana
2025-10-13 17:38 ` [PATCH 11/16] btrfs: remove fs_info argument from steal_from_global_rsv() fdmanana
2025-10-13 17:38 ` [PATCH 12/16] btrfs: remove fs_info argument from handle_reserve_ticket() fdmanana
2025-10-13 17:38 ` [PATCH 13/16] btrfs: remove fs_info argument from maybe_clamp_preempt() fdmanana
2025-10-13 17:38 ` [PATCH 14/16] btrfs: fix parameter documentation for btrfs_reserve_data_bytes() fdmanana
2025-10-13 17:38 ` [PATCH 15/16] btrfs: remove fs_info argument from __reserve_bytes() fdmanana
2025-10-13 17:38 ` [PATCH 16/16] btrfs: remove fs_info argument from btrfs_reserve_metadata_bytes() fdmanana
2025-10-13 21:28 ` [PATCH 00/16] btrfs: remove fs_info argument from space_info functions Qu Wenruo
2025-10-14  7:08 ` Johannes Thumshirn
2025-10-15  8:59 ` Anand Jain

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox