aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/disk-io.c
diff options
context:
space:
mode:
authorJosef Bacik <josef@redhat.com>2011-11-03 22:54:25 -0400
committerChris Mason <chris.mason@oracle.com>2011-11-06 03:04:18 -0500
commit6d668dda0caec537fbf28c4d91e6d18181af3cff (patch)
treebfc4afce43435e0dc354e58150745fcf2c6072f0 /fs/btrfs/disk-io.c
parentaf31f5e5b84b5bf2bcec464153a5130b170b2770 (diff)
Btrfs: make a delayed_block_rsv for the delayed item insertion
I've been hitting warnings in use_block_rsv when running the delayed insertion stuff. It's because we will readjust global block rsv based on what is in use, which means we could end up discarding reservations that are for the delayed insertion stuff. So instead create a seperate block rsv for the delayed insertion stuff. This will also make it easier to debug problems with the delayed insertion reservations since we will know that only the delayed insertion code touches this block_rsv. Thanks, Signed-off-by: Josef Bacik <josef@redhat.com> Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/disk-io.c')
-rw-r--r--fs/btrfs/disk-io.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index a61f8a6cf219..23b6776477b7 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -1891,6 +1891,7 @@ struct btrfs_root *open_ctree(struct super_block *sb,
1891 btrfs_init_block_rsv(&fs_info->trans_block_rsv); 1891 btrfs_init_block_rsv(&fs_info->trans_block_rsv);
1892 btrfs_init_block_rsv(&fs_info->chunk_block_rsv); 1892 btrfs_init_block_rsv(&fs_info->chunk_block_rsv);
1893 btrfs_init_block_rsv(&fs_info->empty_block_rsv); 1893 btrfs_init_block_rsv(&fs_info->empty_block_rsv);
1894 btrfs_init_block_rsv(&fs_info->delayed_block_rsv);
1894 atomic_set(&fs_info->nr_async_submits, 0); 1895 atomic_set(&fs_info->nr_async_submits, 0);
1895 atomic_set(&fs_info->async_delalloc_pages, 0); 1896 atomic_set(&fs_info->async_delalloc_pages, 0);
1896 atomic_set(&fs_info->async_submit_draining, 0); 1897 atomic_set(&fs_info->async_submit_draining, 0);