btrfs: print the block rsv type when we fail our reservation
authorJosef Bacik <josef@toxicpanda.com>
Mon, 26 Oct 2020 20:57:26 +0000 (16:57 -0400)
committerDavid Sterba <dsterba@suse.com>
Thu, 5 Nov 2020 12:02:05 +0000 (13:02 +0100)
To help with debugging, print the type of the block rsv when we fail to
use our target block rsv in btrfs_use_block_rsv.

This now produces:

 [  544.672035] BTRFS: block rsv 1 returned -28

which is still cryptic without consulting the enum in block-rsv.h but I
guess it's better than nothing.

Reviewed-by: Nikolay Borisov <nborisov@suse.com>
Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: David Sterba <dsterba@suse.com>
[ add note from Nikolay ]
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/block-rsv.c

index 7e1549a84fcc99d4d8c7e8b45691c71ebd254867..bc920afe23bf09681cacf51b4db0f10648c3f974 100644 (file)
@@ -511,7 +511,8 @@ again:
                                /*DEFAULT_RATELIMIT_BURST*/ 1);
                if (__ratelimit(&_rs))
                        WARN(1, KERN_DEBUG
-                               "BTRFS: block rsv returned %d\n", ret);
+                               "BTRFS: block rsv %d returned %d\n",
+                               block_rsv->type, ret);
        }
 try_reserve:
        ret = btrfs_reserve_metadata_bytes(root, block_rsv, blocksize,