fs: Get proper reference for s_bdi
authorJan Kara <jack@suse.cz>
Wed, 12 Apr 2017 10:24:29 +0000 (12:24 +0200)
committerJens Axboe <axboe@fb.com>
Thu, 20 Apr 2017 18:09:55 +0000 (12:09 -0600)
commit13eec2363ef07c40dec84662ad17148f7a333a21
tree6f59d9873290e05e088431317ca93c9a0186a89c
parentfca39346a55bb7196888ffc77d9e3557340d1d0b
fs: Get proper reference for s_bdi

So far we just relied on block device to hold a bdi reference for us
while the filesystem is mounted. While that works perfectly fine, it is
a bit awkward that we have a pointer to a refcounted structure in the
superblock without proper reference. So make s_bdi hold a proper
reference to block device's BDI. No filesystem using mount_bdev()
actually changes s_bdi so this is safe and will make bdev filesystems
work the same way as filesystems needing to set up their private bdi.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Jens Axboe <axboe@fb.com>
fs/super.c