]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
btrfs: assert delayed refs lock is held at add_delayed_ref_head()
authorFilipe Manana <fdmanana@suse.com>
Wed, 23 Oct 2024 11:48:15 +0000 (12:48 +0100)
committerDavid Sterba <dsterba@suse.com>
Mon, 11 Nov 2024 13:34:20 +0000 (14:34 +0100)
The delayed refs lock must be held when calling add_delayed_ref_head(),
so assert that it's being held.

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>
fs/btrfs/delayed-ref.c

index f74154c56432045a024f1186ac00e19d1001220f..018c9765702cdd95f07197853130a08d2dd1e2eb 100644 (file)
@@ -886,6 +886,7 @@ add_delayed_ref_head(struct btrfs_trans_handle *trans,
        bool qrecord_inserted = false;
 
        delayed_refs = &trans->transaction->delayed_refs;
+       lockdep_assert_held(&delayed_refs->lock);
 
        /* Record qgroup extent info if provided */
        if (qrecord) {