summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2017-04-12 06:24:47 -0400
committerJens Axboe <axboe@fb.com>2017-04-20 14:09:55 -0400
commitc1844d536dafa5f2cddf4b4841a3634f80a27666 (patch)
treecd45b315f2d205fa9f34a4cdb22a1511f1c39f65
parent99edd4580b7444f57d7494e6433cdbdb08d5a19d (diff)
fs: Remove SB_I_DYNBDI flag
Now that all bdi structures filesystems use are properly refcounted, we can remove the SB_I_DYNBDI flag. Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: Jens Axboe <axboe@fb.com>
-rw-r--r--drivers/mtd/mtdsuper.c1
-rw-r--r--fs/gfs2/ops_fstype.c1
-rw-r--r--fs/nfs/super.c1
-rw-r--r--fs/nilfs2/super.c1
-rw-r--r--fs/super.c5
-rw-r--r--include/linux/fs.h3
6 files changed, 1 insertions, 11 deletions
diff --git a/drivers/mtd/mtdsuper.c b/drivers/mtd/mtdsuper.c
index e69e7855e31f..e43fea896d1e 100644
--- a/drivers/mtd/mtdsuper.c
+++ b/drivers/mtd/mtdsuper.c
@@ -53,7 +53,6 @@ static int get_sb_mtd_set(struct super_block *sb, void *_mtd)
53 sb->s_mtd = mtd; 53 sb->s_mtd = mtd;
54 sb->s_dev = MKDEV(MTD_BLOCK_MAJOR, mtd->index); 54 sb->s_dev = MKDEV(MTD_BLOCK_MAJOR, mtd->index);
55 sb->s_bdi = bdi_get(mtd_bdi); 55 sb->s_bdi = bdi_get(mtd_bdi);
56 sb->s_iflags |= SB_I_DYNBDI;
57 56
58 return 0; 57 return 0;
59} 58}
diff --git a/fs/gfs2/ops_fstype.c b/fs/gfs2/ops_fstype.c
index e6b6f97d0fc1..ed67548b286c 100644
--- a/fs/gfs2/ops_fstype.c
+++ b/fs/gfs2/ops_fstype.c
@@ -1224,7 +1224,6 @@ static int set_gfs2_super(struct super_block *s, void *data)
1224 s->s_bdev = data; 1224 s->s_bdev = data;
1225 s->s_dev = s->s_bdev->bd_dev; 1225 s->s_dev = s->s_bdev->bd_dev;
1226 s->s_bdi = bdi_get(s->s_bdev->bd_bdi); 1226 s->s_bdi = bdi_get(s->s_bdev->bd_bdi);
1227 s->s_iflags |= SB_I_DYNBDI;
1228 return 0; 1227 return 0;
1229} 1228}
1230 1229
diff --git a/fs/nfs/super.c b/fs/nfs/super.c
index 8d97aa70407e..dc69314d455e 100644
--- a/fs/nfs/super.c
+++ b/fs/nfs/super.c
@@ -2379,7 +2379,6 @@ int nfs_clone_super(struct super_block *sb, struct nfs_mount_info *mount_info)
2379 nfs_initialise_sb(sb); 2379 nfs_initialise_sb(sb);
2380 2380
2381 sb->s_bdi = bdi_get(old_sb->s_bdi); 2381 sb->s_bdi = bdi_get(old_sb->s_bdi);
2382 sb->s_iflags |= SB_I_DYNBDI;
2383 2382
2384 return 0; 2383 return 0;
2385} 2384}
diff --git a/fs/nilfs2/super.c b/fs/nilfs2/super.c
index feb796a38b8d..926682981d61 100644
--- a/fs/nilfs2/super.c
+++ b/fs/nilfs2/super.c
@@ -1069,7 +1069,6 @@ nilfs_fill_super(struct super_block *sb, void *data, int silent)
1069 sb->s_max_links = NILFS_LINK_MAX; 1069 sb->s_max_links = NILFS_LINK_MAX;
1070 1070
1071 sb->s_bdi = bdi_get(sb->s_bdev->bd_bdi); 1071 sb->s_bdi = bdi_get(sb->s_bdev->bd_bdi);
1072 sb->s_iflags |= SB_I_DYNBDI;
1073 1072
1074 err = load_nilfs(nilfs, sb); 1073 err = load_nilfs(nilfs, sb);
1075 if (err) 1074 if (err)
diff --git a/fs/super.c b/fs/super.c
index e267d3a00144..8444d26926ef 100644
--- a/fs/super.c
+++ b/fs/super.c
@@ -446,10 +446,9 @@ void generic_shutdown_super(struct super_block *sb)
446 hlist_del_init(&sb->s_instances); 446 hlist_del_init(&sb->s_instances);
447 spin_unlock(&sb_lock); 447 spin_unlock(&sb_lock);
448 up_write(&sb->s_umount); 448 up_write(&sb->s_umount);
449 if (sb->s_iflags & SB_I_DYNBDI) { 449 if (sb->s_bdi != &noop_backing_dev_info) {
450 bdi_put(sb->s_bdi); 450 bdi_put(sb->s_bdi);
451 sb->s_bdi = &noop_backing_dev_info; 451 sb->s_bdi = &noop_backing_dev_info;
452 sb->s_iflags &= ~SB_I_DYNBDI;
453 } 452 }
454} 453}
455 454
@@ -1055,7 +1054,6 @@ static int set_bdev_super(struct super_block *s, void *data)
1055 s->s_bdev = data; 1054 s->s_bdev = data;
1056 s->s_dev = s->s_bdev->bd_dev; 1055 s->s_dev = s->s_bdev->bd_dev;
1057 s->s_bdi = bdi_get(s->s_bdev->bd_bdi); 1056 s->s_bdi = bdi_get(s->s_bdev->bd_bdi);
1058 s->s_iflags |= SB_I_DYNBDI;
1059 1057
1060 return 0; 1058 return 0;
1061} 1059}
@@ -1282,7 +1280,6 @@ int super_setup_bdi_name(struct super_block *sb, char *fmt, ...)
1282 } 1280 }
1283 WARN_ON(sb->s_bdi != &noop_backing_dev_info); 1281 WARN_ON(sb->s_bdi != &noop_backing_dev_info);
1284 sb->s_bdi = bdi; 1282 sb->s_bdi = bdi;
1285 sb->s_iflags |= SB_I_DYNBDI;
1286 1283
1287 return 0; 1284 return 0;
1288} 1285}
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 98cf14ea78c0..30e5c14bd743 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -1272,9 +1272,6 @@ struct mm_struct;
1272/* sb->s_iflags to limit user namespace mounts */ 1272/* sb->s_iflags to limit user namespace mounts */
1273#define SB_I_USERNS_VISIBLE 0x00000010 /* fstype already mounted */ 1273#define SB_I_USERNS_VISIBLE 0x00000010 /* fstype already mounted */
1274 1274
1275/* Temporary flag until all filesystems are converted to dynamic bdis */
1276#define SB_I_DYNBDI 0x00000100
1277
1278/* Possible states of 'frozen' field */ 1275/* Possible states of 'frozen' field */
1279enum { 1276enum {
1280 SB_UNFROZEN = 0, /* FS is unfrozen */ 1277 SB_UNFROZEN = 0, /* FS is unfrozen */