From 376324192748d77392b2379a12fbb64f1f89d8a7 Mon Sep 17 00:00:00 2001 From: Al Viro Date: Fri, 1 Aug 2008 05:32:04 -0400 Subject: [PATCH] --- yaml --- r: 107268 b: refs/heads/master c: 8266602033d6adc6d10cb8811c1fd694767909b0 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/block_dev.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 101db4ad6653..4b78b8b2a97d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 77e69dac3cefacee939cb107ae9cd520a62338e0 +refs/heads/master: 8266602033d6adc6d10cb8811c1fd694767909b0 diff --git a/trunk/fs/block_dev.c b/trunk/fs/block_dev.c index dcf37cada369..e664b0b70489 100644 --- a/trunk/fs/block_dev.c +++ b/trunk/fs/block_dev.c @@ -941,8 +941,10 @@ static int do_open(struct block_device *bdev, struct file *file, int for_part) * hooks: /n/, see "layering violations". */ ret = devcgroup_inode_permission(bdev->bd_inode, perm); - if (ret != 0) + if (ret != 0) { + bdput(bdev); return ret; + } ret = -ENXIO; file->f_mapping = bdev->bd_inode->i_mapping;