* [PATCH 0/4] btrfs: delayed_ref parameter cleanup
@ 2022-12-12 9:02 Johannes Thumshirn
2022-12-12 9:02 ` [PATCH 1/4] btrfs: drop unused trans parameter of drop_delayed_ref Johannes Thumshirn
` (5 more replies)
0 siblings, 6 replies; 12+ messages in thread
From: Johannes Thumshirn @ 2022-12-12 9:02 UTC (permalink / raw)
To: linux-btrfs; +Cc: Johannes Thumshirn
While looking at the delayed_ref code for the RST series I've discovered, that
drop_delayed_ref is using a btrfs_trans_handle without even using it. After
having it removed I've identified more uses of the trans in the callchain that
are unused after drop_delayed_ref got rid of it.
Johannes Thumshirn (4):
btrfs: drop unused trans parameter of drop_delayed_ref
btrfs: remove trans parameter of merge_ref
btrfs: drop trans parameter of insert_delayed_ref
btrfs: directly pass in fs_info to btrfs_merge_delayed_refs
fs/btrfs/delayed-ref.c | 24 ++++++++++--------------
fs/btrfs/delayed-ref.h | 2 +-
fs/btrfs/extent-tree.c | 4 ++--
3 files changed, 13 insertions(+), 17 deletions(-)
base-commit: b7af0635c87ff78d6bd523298ab7471f9ffd3ce5
--
2.38.1
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/4] btrfs: drop unused trans parameter of drop_delayed_ref
2022-12-12 9:02 [PATCH 0/4] btrfs: delayed_ref parameter cleanup Johannes Thumshirn
@ 2022-12-12 9:02 ` Johannes Thumshirn
2022-12-12 9:21 ` Qu Wenruo
2022-12-12 9:02 ` [PATCH 2/4] btrfs: remove trans parameter of merge_ref Johannes Thumshirn
` (4 subsequent siblings)
5 siblings, 1 reply; 12+ messages in thread
From: Johannes Thumshirn @ 2022-12-12 9:02 UTC (permalink / raw)
To: linux-btrfs; +Cc: Johannes Thumshirn
drop_delayed_ref() doesn't use the btrfs_trans_handle it gets passed in,
so remove it.
Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
---
fs/btrfs/delayed-ref.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
index 573ebab886e2..663e7493926f 100644
--- a/fs/btrfs/delayed-ref.c
+++ b/fs/btrfs/delayed-ref.c
@@ -437,8 +437,7 @@ int btrfs_delayed_ref_lock(struct btrfs_delayed_ref_root *delayed_refs,
return 0;
}
-static inline void drop_delayed_ref(struct btrfs_trans_handle *trans,
- struct btrfs_delayed_ref_root *delayed_refs,
+static inline void drop_delayed_ref(struct btrfs_delayed_ref_root *delayed_refs,
struct btrfs_delayed_ref_head *head,
struct btrfs_delayed_ref_node *ref)
{
@@ -482,10 +481,10 @@ static bool merge_ref(struct btrfs_trans_handle *trans,
mod = -next->ref_mod;
}
- drop_delayed_ref(trans, delayed_refs, head, next);
+ drop_delayed_ref(delayed_refs, head, next);
ref->ref_mod += mod;
if (ref->ref_mod == 0) {
- drop_delayed_ref(trans, delayed_refs, head, ref);
+ drop_delayed_ref(delayed_refs, head, ref);
done = true;
} else {
/*
@@ -641,7 +640,7 @@ static int insert_delayed_ref(struct btrfs_trans_handle *trans,
/* remove existing tail if its ref_mod is zero */
if (exist->ref_mod == 0)
- drop_delayed_ref(trans, root, href, exist);
+ drop_delayed_ref(root, href, exist);
spin_unlock(&href->lock);
return ret;
inserted:
--
2.38.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/4] btrfs: remove trans parameter of merge_ref
2022-12-12 9:02 [PATCH 0/4] btrfs: delayed_ref parameter cleanup Johannes Thumshirn
2022-12-12 9:02 ` [PATCH 1/4] btrfs: drop unused trans parameter of drop_delayed_ref Johannes Thumshirn
@ 2022-12-12 9:02 ` Johannes Thumshirn
2022-12-12 9:22 ` Qu Wenruo
2022-12-12 9:02 ` [PATCH 3/4] btrfs: drop trans parameter of insert_delayed_ref Johannes Thumshirn
` (3 subsequent siblings)
5 siblings, 1 reply; 12+ messages in thread
From: Johannes Thumshirn @ 2022-12-12 9:02 UTC (permalink / raw)
To: linux-btrfs; +Cc: Johannes Thumshirn
Now that drop_delayed_ref() doesn't get the btrfs_trans_handle passed in
anymore, we can get rid of it in merge_ref() as well.
Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
---
fs/btrfs/delayed-ref.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
index 663e7493926f..046ba49b8f94 100644
--- a/fs/btrfs/delayed-ref.c
+++ b/fs/btrfs/delayed-ref.c
@@ -451,8 +451,7 @@ static inline void drop_delayed_ref(struct btrfs_delayed_ref_root *delayed_refs,
atomic_dec(&delayed_refs->num_entries);
}
-static bool merge_ref(struct btrfs_trans_handle *trans,
- struct btrfs_delayed_ref_root *delayed_refs,
+static bool merge_ref(struct btrfs_delayed_ref_root *delayed_refs,
struct btrfs_delayed_ref_head *head,
struct btrfs_delayed_ref_node *ref,
u64 seq)
@@ -523,7 +522,7 @@ void btrfs_merge_delayed_refs(struct btrfs_trans_handle *trans,
ref = rb_entry(node, struct btrfs_delayed_ref_node, ref_node);
if (seq && ref->seq >= seq)
continue;
- if (merge_ref(trans, delayed_refs, head, ref, seq))
+ if (merge_ref(delayed_refs, head, ref, seq))
goto again;
}
}
--
2.38.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 3/4] btrfs: drop trans parameter of insert_delayed_ref
2022-12-12 9:02 [PATCH 0/4] btrfs: delayed_ref parameter cleanup Johannes Thumshirn
2022-12-12 9:02 ` [PATCH 1/4] btrfs: drop unused trans parameter of drop_delayed_ref Johannes Thumshirn
2022-12-12 9:02 ` [PATCH 2/4] btrfs: remove trans parameter of merge_ref Johannes Thumshirn
@ 2022-12-12 9:02 ` Johannes Thumshirn
2022-12-12 9:22 ` Qu Wenruo
2022-12-12 9:02 ` [PATCH 4/4] btrfs: directly pass in fs_info to btrfs_merge_delayed_refs Johannes Thumshirn
` (2 subsequent siblings)
5 siblings, 1 reply; 12+ messages in thread
From: Johannes Thumshirn @ 2022-12-12 9:02 UTC (permalink / raw)
To: linux-btrfs; +Cc: Johannes Thumshirn
Now that drop_delayed_ref() doesn't need a btrfs_trans_handle, drop it
from insert_delayed_ref() as well.
Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
---
fs/btrfs/delayed-ref.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
index 046ba49b8f94..678ce95c04ac 100644
--- a/fs/btrfs/delayed-ref.c
+++ b/fs/btrfs/delayed-ref.c
@@ -599,8 +599,7 @@ void btrfs_delete_ref_head(struct btrfs_delayed_ref_root *delayed_refs,
* Return 0 for insert.
* Return >0 for merge.
*/
-static int insert_delayed_ref(struct btrfs_trans_handle *trans,
- struct btrfs_delayed_ref_root *root,
+static int insert_delayed_ref(struct btrfs_delayed_ref_root *root,
struct btrfs_delayed_ref_head *href,
struct btrfs_delayed_ref_node *ref)
{
@@ -976,7 +975,7 @@ int btrfs_add_delayed_tree_ref(struct btrfs_trans_handle *trans,
head_ref = add_delayed_ref_head(trans, head_ref, record,
action, &qrecord_inserted);
- ret = insert_delayed_ref(trans, delayed_refs, head_ref, &ref->node);
+ ret = insert_delayed_ref(delayed_refs, head_ref, &ref->node);
spin_unlock(&delayed_refs->lock);
/*
@@ -1068,7 +1067,7 @@ int btrfs_add_delayed_data_ref(struct btrfs_trans_handle *trans,
head_ref = add_delayed_ref_head(trans, head_ref, record,
action, &qrecord_inserted);
- ret = insert_delayed_ref(trans, delayed_refs, head_ref, &ref->node);
+ ret = insert_delayed_ref(delayed_refs, head_ref, &ref->node);
spin_unlock(&delayed_refs->lock);
/*
--
2.38.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 4/4] btrfs: directly pass in fs_info to btrfs_merge_delayed_refs
2022-12-12 9:02 [PATCH 0/4] btrfs: delayed_ref parameter cleanup Johannes Thumshirn
` (2 preceding siblings ...)
2022-12-12 9:02 ` [PATCH 3/4] btrfs: drop trans parameter of insert_delayed_ref Johannes Thumshirn
@ 2022-12-12 9:02 ` Johannes Thumshirn
2022-12-12 9:25 ` Qu Wenruo
2022-12-12 19:05 ` [PATCH 0/4] btrfs: delayed_ref parameter cleanup Josef Bacik
2022-12-20 9:17 ` Johannes Thumshirn
5 siblings, 1 reply; 12+ messages in thread
From: Johannes Thumshirn @ 2022-12-12 9:02 UTC (permalink / raw)
To: linux-btrfs; +Cc: Johannes Thumshirn
Now that none of the functions called by btrfs_merge_delayed_refs() needs
a btrfs_trans_handle, directly pass in a btrfs_fs_info to
btrfs_merge_delayed_refs().
Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
---
fs/btrfs/delayed-ref.c | 3 +--
fs/btrfs/delayed-ref.h | 2 +-
fs/btrfs/extent-tree.c | 4 ++--
3 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
index 678ce95c04ac..886ffb232eac 100644
--- a/fs/btrfs/delayed-ref.c
+++ b/fs/btrfs/delayed-ref.c
@@ -497,11 +497,10 @@ static bool merge_ref(struct btrfs_delayed_ref_root *delayed_refs,
return done;
}
-void btrfs_merge_delayed_refs(struct btrfs_trans_handle *trans,
+void btrfs_merge_delayed_refs(struct btrfs_fs_info *fs_info,
struct btrfs_delayed_ref_root *delayed_refs,
struct btrfs_delayed_ref_head *head)
{
- struct btrfs_fs_info *fs_info = trans->fs_info;
struct btrfs_delayed_ref_node *ref;
struct rb_node *node;
u64 seq = 0;
diff --git a/fs/btrfs/delayed-ref.h b/fs/btrfs/delayed-ref.h
index d6304b690ec4..2eb34abf700f 100644
--- a/fs/btrfs/delayed-ref.h
+++ b/fs/btrfs/delayed-ref.h
@@ -357,7 +357,7 @@ int btrfs_add_delayed_data_ref(struct btrfs_trans_handle *trans,
int btrfs_add_delayed_extent_op(struct btrfs_trans_handle *trans,
u64 bytenr, u64 num_bytes,
struct btrfs_delayed_extent_op *extent_op);
-void btrfs_merge_delayed_refs(struct btrfs_trans_handle *trans,
+void btrfs_merge_delayed_refs(struct btrfs_fs_info *fs_info,
struct btrfs_delayed_ref_root *delayed_refs,
struct btrfs_delayed_ref_head *head);
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 892d78c1853c..eaa1fb2850d7 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -1963,7 +1963,7 @@ static int btrfs_run_delayed_refs_for_head(struct btrfs_trans_handle *trans,
cond_resched();
spin_lock(&locked_ref->lock);
- btrfs_merge_delayed_refs(trans, delayed_refs, locked_ref);
+ btrfs_merge_delayed_refs(fs_info, delayed_refs, locked_ref);
}
return 0;
@@ -2010,7 +2010,7 @@ static noinline int __btrfs_run_delayed_refs(struct btrfs_trans_handle *trans,
* insert_inline_extent_backref()).
*/
spin_lock(&locked_ref->lock);
- btrfs_merge_delayed_refs(trans, delayed_refs, locked_ref);
+ btrfs_merge_delayed_refs(fs_info, delayed_refs, locked_ref);
ret = btrfs_run_delayed_refs_for_head(trans, locked_ref,
&actual_count);
--
2.38.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 1/4] btrfs: drop unused trans parameter of drop_delayed_ref
2022-12-12 9:02 ` [PATCH 1/4] btrfs: drop unused trans parameter of drop_delayed_ref Johannes Thumshirn
@ 2022-12-12 9:21 ` Qu Wenruo
0 siblings, 0 replies; 12+ messages in thread
From: Qu Wenruo @ 2022-12-12 9:21 UTC (permalink / raw)
To: Johannes Thumshirn, linux-btrfs
On 2022/12/12 17:02, Johannes Thumshirn wrote:
> drop_delayed_ref() doesn't use the btrfs_trans_handle it gets passed in,
> so remove it.
>
> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Thanks,
Qu
> ---
> fs/btrfs/delayed-ref.c | 9 ++++-----
> 1 file changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
> index 573ebab886e2..663e7493926f 100644
> --- a/fs/btrfs/delayed-ref.c
> +++ b/fs/btrfs/delayed-ref.c
> @@ -437,8 +437,7 @@ int btrfs_delayed_ref_lock(struct btrfs_delayed_ref_root *delayed_refs,
> return 0;
> }
>
> -static inline void drop_delayed_ref(struct btrfs_trans_handle *trans,
> - struct btrfs_delayed_ref_root *delayed_refs,
> +static inline void drop_delayed_ref(struct btrfs_delayed_ref_root *delayed_refs,
> struct btrfs_delayed_ref_head *head,
> struct btrfs_delayed_ref_node *ref)
> {
> @@ -482,10 +481,10 @@ static bool merge_ref(struct btrfs_trans_handle *trans,
> mod = -next->ref_mod;
> }
>
> - drop_delayed_ref(trans, delayed_refs, head, next);
> + drop_delayed_ref(delayed_refs, head, next);
> ref->ref_mod += mod;
> if (ref->ref_mod == 0) {
> - drop_delayed_ref(trans, delayed_refs, head, ref);
> + drop_delayed_ref(delayed_refs, head, ref);
> done = true;
> } else {
> /*
> @@ -641,7 +640,7 @@ static int insert_delayed_ref(struct btrfs_trans_handle *trans,
>
> /* remove existing tail if its ref_mod is zero */
> if (exist->ref_mod == 0)
> - drop_delayed_ref(trans, root, href, exist);
> + drop_delayed_ref(root, href, exist);
> spin_unlock(&href->lock);
> return ret;
> inserted:
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/4] btrfs: remove trans parameter of merge_ref
2022-12-12 9:02 ` [PATCH 2/4] btrfs: remove trans parameter of merge_ref Johannes Thumshirn
@ 2022-12-12 9:22 ` Qu Wenruo
0 siblings, 0 replies; 12+ messages in thread
From: Qu Wenruo @ 2022-12-12 9:22 UTC (permalink / raw)
To: Johannes Thumshirn, linux-btrfs
On 2022/12/12 17:02, Johannes Thumshirn wrote:
> Now that drop_delayed_ref() doesn't get the btrfs_trans_handle passed in
> anymore, we can get rid of it in merge_ref() as well.
>
> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Thanks,
Qu
> ---
> fs/btrfs/delayed-ref.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
> index 663e7493926f..046ba49b8f94 100644
> --- a/fs/btrfs/delayed-ref.c
> +++ b/fs/btrfs/delayed-ref.c
> @@ -451,8 +451,7 @@ static inline void drop_delayed_ref(struct btrfs_delayed_ref_root *delayed_refs,
> atomic_dec(&delayed_refs->num_entries);
> }
>
> -static bool merge_ref(struct btrfs_trans_handle *trans,
> - struct btrfs_delayed_ref_root *delayed_refs,
> +static bool merge_ref(struct btrfs_delayed_ref_root *delayed_refs,
> struct btrfs_delayed_ref_head *head,
> struct btrfs_delayed_ref_node *ref,
> u64 seq)
> @@ -523,7 +522,7 @@ void btrfs_merge_delayed_refs(struct btrfs_trans_handle *trans,
> ref = rb_entry(node, struct btrfs_delayed_ref_node, ref_node);
> if (seq && ref->seq >= seq)
> continue;
> - if (merge_ref(trans, delayed_refs, head, ref, seq))
> + if (merge_ref(delayed_refs, head, ref, seq))
> goto again;
> }
> }
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 3/4] btrfs: drop trans parameter of insert_delayed_ref
2022-12-12 9:02 ` [PATCH 3/4] btrfs: drop trans parameter of insert_delayed_ref Johannes Thumshirn
@ 2022-12-12 9:22 ` Qu Wenruo
0 siblings, 0 replies; 12+ messages in thread
From: Qu Wenruo @ 2022-12-12 9:22 UTC (permalink / raw)
To: Johannes Thumshirn, linux-btrfs
On 2022/12/12 17:02, Johannes Thumshirn wrote:
> Now that drop_delayed_ref() doesn't need a btrfs_trans_handle, drop it
> from insert_delayed_ref() as well.
>
> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Thanks,
Qu
> ---
> fs/btrfs/delayed-ref.c | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
> index 046ba49b8f94..678ce95c04ac 100644
> --- a/fs/btrfs/delayed-ref.c
> +++ b/fs/btrfs/delayed-ref.c
> @@ -599,8 +599,7 @@ void btrfs_delete_ref_head(struct btrfs_delayed_ref_root *delayed_refs,
> * Return 0 for insert.
> * Return >0 for merge.
> */
> -static int insert_delayed_ref(struct btrfs_trans_handle *trans,
> - struct btrfs_delayed_ref_root *root,
> +static int insert_delayed_ref(struct btrfs_delayed_ref_root *root,
> struct btrfs_delayed_ref_head *href,
> struct btrfs_delayed_ref_node *ref)
> {
> @@ -976,7 +975,7 @@ int btrfs_add_delayed_tree_ref(struct btrfs_trans_handle *trans,
> head_ref = add_delayed_ref_head(trans, head_ref, record,
> action, &qrecord_inserted);
>
> - ret = insert_delayed_ref(trans, delayed_refs, head_ref, &ref->node);
> + ret = insert_delayed_ref(delayed_refs, head_ref, &ref->node);
> spin_unlock(&delayed_refs->lock);
>
> /*
> @@ -1068,7 +1067,7 @@ int btrfs_add_delayed_data_ref(struct btrfs_trans_handle *trans,
> head_ref = add_delayed_ref_head(trans, head_ref, record,
> action, &qrecord_inserted);
>
> - ret = insert_delayed_ref(trans, delayed_refs, head_ref, &ref->node);
> + ret = insert_delayed_ref(delayed_refs, head_ref, &ref->node);
> spin_unlock(&delayed_refs->lock);
>
> /*
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 4/4] btrfs: directly pass in fs_info to btrfs_merge_delayed_refs
2022-12-12 9:02 ` [PATCH 4/4] btrfs: directly pass in fs_info to btrfs_merge_delayed_refs Johannes Thumshirn
@ 2022-12-12 9:25 ` Qu Wenruo
0 siblings, 0 replies; 12+ messages in thread
From: Qu Wenruo @ 2022-12-12 9:25 UTC (permalink / raw)
To: Johannes Thumshirn, linux-btrfs
On 2022/12/12 17:02, Johannes Thumshirn wrote:
> Now that none of the functions called by btrfs_merge_delayed_refs() needs
> a btrfs_trans_handle, directly pass in a btrfs_fs_info to
> btrfs_merge_delayed_refs().
>
> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Thanks,
Qu
> ---
> fs/btrfs/delayed-ref.c | 3 +--
> fs/btrfs/delayed-ref.h | 2 +-
> fs/btrfs/extent-tree.c | 4 ++--
> 3 files changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c
> index 678ce95c04ac..886ffb232eac 100644
> --- a/fs/btrfs/delayed-ref.c
> +++ b/fs/btrfs/delayed-ref.c
> @@ -497,11 +497,10 @@ static bool merge_ref(struct btrfs_delayed_ref_root *delayed_refs,
> return done;
> }
>
> -void btrfs_merge_delayed_refs(struct btrfs_trans_handle *trans,
> +void btrfs_merge_delayed_refs(struct btrfs_fs_info *fs_info,
> struct btrfs_delayed_ref_root *delayed_refs,
> struct btrfs_delayed_ref_head *head)
> {
> - struct btrfs_fs_info *fs_info = trans->fs_info;
> struct btrfs_delayed_ref_node *ref;
> struct rb_node *node;
> u64 seq = 0;
> diff --git a/fs/btrfs/delayed-ref.h b/fs/btrfs/delayed-ref.h
> index d6304b690ec4..2eb34abf700f 100644
> --- a/fs/btrfs/delayed-ref.h
> +++ b/fs/btrfs/delayed-ref.h
> @@ -357,7 +357,7 @@ int btrfs_add_delayed_data_ref(struct btrfs_trans_handle *trans,
> int btrfs_add_delayed_extent_op(struct btrfs_trans_handle *trans,
> u64 bytenr, u64 num_bytes,
> struct btrfs_delayed_extent_op *extent_op);
> -void btrfs_merge_delayed_refs(struct btrfs_trans_handle *trans,
> +void btrfs_merge_delayed_refs(struct btrfs_fs_info *fs_info,
> struct btrfs_delayed_ref_root *delayed_refs,
> struct btrfs_delayed_ref_head *head);
>
> diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
> index 892d78c1853c..eaa1fb2850d7 100644
> --- a/fs/btrfs/extent-tree.c
> +++ b/fs/btrfs/extent-tree.c
> @@ -1963,7 +1963,7 @@ static int btrfs_run_delayed_refs_for_head(struct btrfs_trans_handle *trans,
> cond_resched();
>
> spin_lock(&locked_ref->lock);
> - btrfs_merge_delayed_refs(trans, delayed_refs, locked_ref);
> + btrfs_merge_delayed_refs(fs_info, delayed_refs, locked_ref);
> }
>
> return 0;
> @@ -2010,7 +2010,7 @@ static noinline int __btrfs_run_delayed_refs(struct btrfs_trans_handle *trans,
> * insert_inline_extent_backref()).
> */
> spin_lock(&locked_ref->lock);
> - btrfs_merge_delayed_refs(trans, delayed_refs, locked_ref);
> + btrfs_merge_delayed_refs(fs_info, delayed_refs, locked_ref);
>
> ret = btrfs_run_delayed_refs_for_head(trans, locked_ref,
> &actual_count);
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 0/4] btrfs: delayed_ref parameter cleanup
2022-12-12 9:02 [PATCH 0/4] btrfs: delayed_ref parameter cleanup Johannes Thumshirn
` (3 preceding siblings ...)
2022-12-12 9:02 ` [PATCH 4/4] btrfs: directly pass in fs_info to btrfs_merge_delayed_refs Johannes Thumshirn
@ 2022-12-12 19:05 ` Josef Bacik
2022-12-20 9:17 ` Johannes Thumshirn
5 siblings, 0 replies; 12+ messages in thread
From: Josef Bacik @ 2022-12-12 19:05 UTC (permalink / raw)
To: Johannes Thumshirn; +Cc: linux-btrfs
On Mon, Dec 12, 2022 at 01:02:45AM -0800, Johannes Thumshirn wrote:
> While looking at the delayed_ref code for the RST series I've discovered, that
> drop_delayed_ref is using a btrfs_trans_handle without even using it. After
> having it removed I've identified more uses of the trans in the callchain that
> are unused after drop_delayed_ref got rid of it.
>
You can add
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
to the series, thanks,
Josef
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 0/4] btrfs: delayed_ref parameter cleanup
2022-12-12 9:02 [PATCH 0/4] btrfs: delayed_ref parameter cleanup Johannes Thumshirn
` (4 preceding siblings ...)
2022-12-12 19:05 ` [PATCH 0/4] btrfs: delayed_ref parameter cleanup Josef Bacik
@ 2022-12-20 9:17 ` Johannes Thumshirn
2022-12-20 18:33 ` David Sterba
5 siblings, 1 reply; 12+ messages in thread
From: Johannes Thumshirn @ 2022-12-20 9:17 UTC (permalink / raw)
To: linux-btrfs@vger.kernel.org
On 12.12.22 10:03, Johannes Thumshirn wrote:
> While looking at the delayed_ref code for the RST series I've discovered, that
> drop_delayed_ref is using a btrfs_trans_handle without even using it. After
> having it removed I've identified more uses of the trans in the callchain that
> are unused after drop_delayed_ref got rid of it.
>
> Johannes Thumshirn (4):
> btrfs: drop unused trans parameter of drop_delayed_ref
> btrfs: remove trans parameter of merge_ref
> btrfs: drop trans parameter of insert_delayed_ref
> btrfs: directly pass in fs_info to btrfs_merge_delayed_refs
>
> fs/btrfs/delayed-ref.c | 24 ++++++++++--------------
> fs/btrfs/delayed-ref.h | 2 +-
> fs/btrfs/extent-tree.c | 4 ++--
> 3 files changed, 13 insertions(+), 17 deletions(-)
>
>
> base-commit: b7af0635c87ff78d6bd523298ab7471f9ffd3ce5
Ping?
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 0/4] btrfs: delayed_ref parameter cleanup
2022-12-20 9:17 ` Johannes Thumshirn
@ 2022-12-20 18:33 ` David Sterba
0 siblings, 0 replies; 12+ messages in thread
From: David Sterba @ 2022-12-20 18:33 UTC (permalink / raw)
To: Johannes Thumshirn; +Cc: linux-btrfs@vger.kernel.org
On Tue, Dec 20, 2022 at 09:17:22AM +0000, Johannes Thumshirn wrote:
> On 12.12.22 10:03, Johannes Thumshirn wrote:
> > While looking at the delayed_ref code for the RST series I've discovered, that
> > drop_delayed_ref is using a btrfs_trans_handle without even using it. After
> > having it removed I've identified more uses of the trans in the callchain that
> > are unused after drop_delayed_ref got rid of it.
> >
> > Johannes Thumshirn (4):
> > btrfs: drop unused trans parameter of drop_delayed_ref
> > btrfs: remove trans parameter of merge_ref
> > btrfs: drop trans parameter of insert_delayed_ref
> > btrfs: directly pass in fs_info to btrfs_merge_delayed_refs
> >
> > fs/btrfs/delayed-ref.c | 24 ++++++++++--------------
> > fs/btrfs/delayed-ref.h | 2 +-
> > fs/btrfs/extent-tree.c | 4 ++--
> > 3 files changed, 13 insertions(+), 17 deletions(-)
> >
> >
> > base-commit: b7af0635c87ff78d6bd523298ab7471f9ffd3ce5
> Ping?
The patchset has been in misc-next for some time, I forgot to send the
mail.
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2022-12-20 18:34 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-12 9:02 [PATCH 0/4] btrfs: delayed_ref parameter cleanup Johannes Thumshirn
2022-12-12 9:02 ` [PATCH 1/4] btrfs: drop unused trans parameter of drop_delayed_ref Johannes Thumshirn
2022-12-12 9:21 ` Qu Wenruo
2022-12-12 9:02 ` [PATCH 2/4] btrfs: remove trans parameter of merge_ref Johannes Thumshirn
2022-12-12 9:22 ` Qu Wenruo
2022-12-12 9:02 ` [PATCH 3/4] btrfs: drop trans parameter of insert_delayed_ref Johannes Thumshirn
2022-12-12 9:22 ` Qu Wenruo
2022-12-12 9:02 ` [PATCH 4/4] btrfs: directly pass in fs_info to btrfs_merge_delayed_refs Johannes Thumshirn
2022-12-12 9:25 ` Qu Wenruo
2022-12-12 19:05 ` [PATCH 0/4] btrfs: delayed_ref parameter cleanup Josef Bacik
2022-12-20 9:17 ` Johannes Thumshirn
2022-12-20 18:33 ` David Sterba
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox