[SCSI] target: iblock/pscsi claim checking for NULL instead of IS_ERR
blkdev_get_by_path() returns an ERR_PTR() or error and it doesn't return a NULL. It looks like this bug would be easy to trigger by mistake. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Nicholas A. Bellinger <nab@linux-iscsi.org> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
Родитель
a361cc0025
Коммит
3ae279d259
|
@ -154,7 +154,7 @@ static struct se_device *iblock_create_virtdevice(
|
|||
|
||||
bd = blkdev_get_by_path(ib_dev->ibd_udev_path,
|
||||
FMODE_WRITE|FMODE_READ|FMODE_EXCL, ib_dev);
|
||||
if (!(bd))
|
||||
if (IS_ERR(bd))
|
||||
goto failed;
|
||||
/*
|
||||
* Setup the local scope queue_limits from struct request_queue->limits
|
||||
|
|
|
@ -462,8 +462,8 @@ static struct se_device *pscsi_create_type_disk(
|
|||
*/
|
||||
bd = blkdev_get_by_path(se_dev->se_dev_udev_path,
|
||||
FMODE_WRITE|FMODE_READ|FMODE_EXCL, pdv);
|
||||
if (!(bd)) {
|
||||
printk("pSCSI: blkdev_get_by_path() failed\n");
|
||||
if (IS_ERR(bd)) {
|
||||
printk(KERN_ERR "pSCSI: blkdev_get_by_path() failed\n");
|
||||
scsi_device_put(sd);
|
||||
return NULL;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче