Btrfs: warn_on for unaccounted spaces
authorJosef Bacik <jbacik@fb.com>
Fri, 25 Mar 2016 17:25:51 +0000 (13:25 -0400)
committerDavid Sterba <dsterba@suse.com>
Thu, 7 Jul 2016 16:45:53 +0000 (18:45 +0200)
These were hidden behind enospc_debug, which isn't helpful as they indicate
actual bugs, unlike the rest of the enospc_debug stuff which is really debug
information.  Thanks,

Signed-off-by: Josef Bacik <jbacik@fb.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/extent-tree.c

index ac80fcce25f780caa26c7804cfbd28d65aad0f58..a1355a33e7e954266bedd2be735ad092e6d4331c 100644 (file)
@@ -9778,13 +9778,15 @@ int btrfs_free_block_groups(struct btrfs_fs_info *info)
                space_info = list_entry(info->space_info.next,
                                        struct btrfs_space_info,
                                        list);
-               if (btrfs_test_opt(info->tree_root, ENOSPC_DEBUG)) {
-                       if (WARN_ON(space_info->bytes_pinned > 0 ||
+
+               /*
+                * Do not hide this behind enospc_debug, this is actually
+                * important and indicates a real bug if this happens.
+                */
+               if (WARN_ON(space_info->bytes_pinned > 0 ||
                            space_info->bytes_reserved > 0 ||
-                           space_info->bytes_may_use > 0)) {
-                               dump_space_info(space_info, 0, 0);
-                       }
-               }
+                           space_info->bytes_may_use > 0))
+                       dump_space_info(space_info, 0, 0);
                list_del(&space_info->list);
                for (i = 0; i < BTRFS_NR_RAID_TYPES; i++) {
                        struct kobject *kobj;