From: Dan Carpenter Date: Sat, 19 Mar 2011 12:53:31 +0000 (+0100) Subject: block: NULL dereference on error path in __blkdev_get() X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=4345caba340f051e10847924fc078ae18ed6695c;p=linux-beck.git block: NULL dereference on error path in __blkdev_get() "disk" is always NULL when we goto out. There was a check for this before, but it was removed in 69e02c59a7d9 "block: Don't check events while open is in progress". Signed-off-by: Dan Carpenter Acked-by: Tejun Heo Signed-off-by: Jens Axboe --- diff --git a/fs/block_dev.c b/fs/block_dev.c index fbe05cbdd692..7d02afb2b7f4 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c @@ -1181,9 +1181,9 @@ static int __blkdev_get(struct block_device *bdev, fmode_t mode, int for_part) out_unlock_bdev: mutex_unlock(&bdev->bd_mutex); disk_unblock_events(disk); - out: module_put(disk->fops->owner); put_disk(disk); + out: bdput(bdev); return ret;