btrfs: add block-group tree to lockdep classes
authorDavid Sterba <dsterba@suse.com>
Wed, 31 May 2023 22:33:01 +0000 (00:33 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 Jul 2023 14:22:13 +0000 (16:22 +0200)
commit 1a1b0e729d227f9f758f7b5f1c997e874e94156e upstream.

The block group tree was not present among the lockdep classes. We could
get potentially lockdep warnings but so far none has been seen, also
because block-group-tree is a relatively new feature.

CC: stable@vger.kernel.org # 6.1+
Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/btrfs/locking.c

index 0eab3cb..df98e64 100644 (file)
@@ -56,8 +56,8 @@
 
 static struct btrfs_lockdep_keyset {
        u64                     id;             /* root objectid */
-       /* Longest entry: btrfs-free-space-00 */
-       char                    names[BTRFS_MAX_LEVEL][20];
+       /* Longest entry: btrfs-block-group-00 */
+       char                    names[BTRFS_MAX_LEVEL][24];
        struct lock_class_key   keys[BTRFS_MAX_LEVEL];
 } btrfs_lockdep_keysets[] = {
        { .id = BTRFS_ROOT_TREE_OBJECTID,       DEFINE_NAME("root")     },
@@ -71,6 +71,7 @@ static struct btrfs_lockdep_keyset {
        { .id = BTRFS_DATA_RELOC_TREE_OBJECTID, DEFINE_NAME("dreloc")   },
        { .id = BTRFS_UUID_TREE_OBJECTID,       DEFINE_NAME("uuid")     },
        { .id = BTRFS_FREE_SPACE_TREE_OBJECTID, DEFINE_NAME("free-space") },
+       { .id = BTRFS_BLOCK_GROUP_TREE_OBJECTID, DEFINE_NAME("block-group") },
        { .id = 0,                              DEFINE_NAME("tree")     },
 };