diff options
author | Filipe Manana <fdmanana@suse.com> | 2024-10-23 12:41:17 +0100 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2024-11-11 14:34:20 +0100 |
commit | 7226ed7d44eecfdf5a8406b3481a4246d49b2eba (patch) | |
tree | d894b50d0e117676c52f92a91a15f1196178bbda /fs/btrfs | |
parent | 5f54384c73fa0ed91dd6d7d7f4bbb0da0e35c896 (diff) | |
download | lwn-7226ed7d44eecfdf5a8406b3481a4246d49b2eba.tar.gz lwn-7226ed7d44eecfdf5a8406b3481a4246d49b2eba.zip |
btrfs: assert delayed refs lock is held at find_ref_head()
We have 3 callers for find_ref_head() so assert at find_ref_head() that we
have the delayed refs lock held, removing the assertion from one of its
callers (btrfs_find_delayed_ref_head()).
Reviewed-by: Boris Burkov <boris@bur.io>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs')
-rw-r--r-- | fs/btrfs/delayed-ref.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/btrfs/delayed-ref.c b/fs/btrfs/delayed-ref.c index ad067c7780db..9f8853fb9fa6 100644 --- a/fs/btrfs/delayed-ref.c +++ b/fs/btrfs/delayed-ref.c @@ -407,6 +407,8 @@ static struct btrfs_delayed_ref_head *find_ref_head( struct rb_node *n; struct btrfs_delayed_ref_head *entry; + lockdep_assert_held(&dr->lock); + n = root->rb_node; entry = NULL; while (n) { @@ -1195,8 +1197,6 @@ btrfs_find_delayed_ref_head(const struct btrfs_fs_info *fs_info, struct btrfs_delayed_ref_root *delayed_refs, u64 bytenr) { - lockdep_assert_held(&delayed_refs->lock); - return find_ref_head(fs_info, delayed_refs, bytenr, false); } |