On Thu, 2019-10-03 at 07:56 -0700, Darrick J. Wong wrote: > On Thu, Oct 03, 2019 at 06:25:28PM +0800, Ian Kent wrote: > > There appear to be a couple of missing blkdev_put() in > > get_tree_bdev(). > > No SOB, not reviewable...... It's not expected to be but is needed if anyone wants to test the series. I sent this to Al asking if these are in fact missing. If they are I expect he will push an update to Linus pretty quickly. > > --D > > > --- > > fs/super.c | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/fs/super.c b/fs/super.c > > index a7f62c964e58..fd816014bd7d 100644 > > --- a/fs/super.c > > +++ b/fs/super.c > > @@ -1268,6 +1268,7 @@ int get_tree_bdev(struct fs_context *fc, > > mutex_lock(&bdev->bd_fsfreeze_mutex); > > if (bdev->bd_fsfreeze_count > 0) { > > mutex_unlock(&bdev->bd_fsfreeze_mutex); > > + blkdev_put(bdev, mode); > > warnf(fc, "%pg: Can't mount, blockdev is frozen", > > bdev); > > return -EBUSY; > > } > > @@ -1276,8 +1277,10 @@ int get_tree_bdev(struct fs_context *fc, > > fc->sget_key = bdev; > > s = sget_fc(fc, test_bdev_super_fc, set_bdev_super_fc); > > mutex_unlock(&bdev->bd_fsfreeze_mutex); > > - if (IS_ERR(s)) > > + if (IS_ERR(s)) { > > + blkdev_put(bdev, mode); > > return PTR_ERR(s); > > + } > > > > if (s->s_root) { > > /* Don't summarily change the RO/RW state. */ > >