BTRFS no longer relies on btrfs_subvolume_writers for snapshot
exclusion. Just remove any code allocating/freeing it and the structure
definition itself.

Signed-off-by: Nikolay Borisov <nbori...@suse.com>
---
 fs/btrfs/ctree.h   |  6 ------
 fs/btrfs/disk-io.c | 10 ----------
 2 files changed, 16 deletions(-)

diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
index 05731e4ca358..9fdb7ab74102 100644
--- a/fs/btrfs/ctree.h
+++ b/fs/btrfs/ctree.h
@@ -1169,11 +1169,6 @@ static inline struct btrfs_fs_info *btrfs_sb(struct 
super_block *sb)
        return sb->s_fs_info;
 }
 
-struct btrfs_subvolume_writers {
-       struct percpu_counter   counter;
-       wait_queue_head_t       wait;
-};
-
 /*
  * The state of btrfs root
  */
@@ -1339,7 +1334,6 @@ struct btrfs_root {
         * manipulation with the read-only status via SUBVOL_SETFLAGS
         */
        int send_in_progress;
-       struct btrfs_subvolume_writers *subv_writers;
        atomic_t will_be_snapshotted;
        atomic_t snapshot_force_cow;
 
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 005c9f5c6f10..ad2fa12cc654 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -1492,7 +1492,6 @@ struct btrfs_root *btrfs_read_fs_root(struct btrfs_root 
*tree_root,
 int btrfs_init_fs_root(struct btrfs_root *root)
 {
        int ret;
-       struct btrfs_subvolume_writers *writers;
 
        root->free_ino_ctl = kzalloc(sizeof(*root->free_ino_ctl), GFP_NOFS);
        root->free_ino_pinned = kzalloc(sizeof(*root->free_ino_pinned),
@@ -1502,13 +1501,6 @@ int btrfs_init_fs_root(struct btrfs_root *root)
                goto fail;
        }
 
-       writers = btrfs_alloc_subvolume_writers();
-       if (IS_ERR(writers)) {
-               ret = PTR_ERR(writers);
-               goto fail;
-       }
-       root->subv_writers = writers;
-
        btrfs_init_free_ino_ctl(root);
        spin_lock_init(&root->ino_cache_lock);
        init_waitqueue_head(&root->ino_cache_wait);
@@ -3870,8 +3862,6 @@ void btrfs_free_fs_root(struct btrfs_root *root)
        WARN_ON(!RB_EMPTY_ROOT(&root->inode_tree));
        if (root->anon_dev)
                free_anon_bdev(root->anon_dev);
-       if (root->subv_writers)
-               btrfs_free_subvolume_writers(root->subv_writers);
        free_extent_buffer(root->node);
        free_extent_buffer(root->commit_root);
        kfree(root->free_ino_ctl);
-- 
2.17.1

Reply via email to