summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ctree.h2
-rw-r--r--extent-tree.c3
2 files changed, 2 insertions, 3 deletions
diff --git a/ctree.h b/ctree.h
index c95157dc..4ad34f60 100644
--- a/ctree.h
+++ b/ctree.h
@@ -1126,8 +1126,8 @@ struct btrfs_fs_info {
struct btrfs_fs_devices *fs_devices;
struct list_head space_info;
- int system_allocs;
+ unsigned int system_allocs:1;
unsigned int readonly:1;
unsigned int on_restoring:1;
unsigned int is_chunk_recover:1;
diff --git a/extent-tree.c b/extent-tree.c
index 81a17a36..f1cc4bfe 100644
--- a/extent-tree.c
+++ b/extent-tree.c
@@ -2663,8 +2663,7 @@ int btrfs_reserve_extent(struct btrfs_trans_handle *trans,
alloc_profile = info->avail_data_alloc_bits &
info->data_alloc_profile;
data = BTRFS_BLOCK_GROUP_DATA | alloc_profile;
- } else if ((info->system_allocs > 0 || root == info->chunk_root) &&
- info->system_allocs >= 0) {
+ } else if (info->system_allocs == 1 || root == info->chunk_root) {
alloc_profile = info->avail_system_alloc_bits &
info->system_alloc_profile;
data = BTRFS_BLOCK_GROUP_SYSTEM | alloc_profile;