[PATCH 1/1] scsi: snic: fix improper return value

From: Pan Bian
Date: Sun Dec 04 2016 - 01:08:47 EST


From: Pan Bian <bianpan2016@xxxxxxx>

When the calls to mempool_create_slab_pool() return unexpected values,
the value of return variable ret is 0. 0 means no error. Thus, the
caller of fnic_probe() cannot detect the error, and may be misled. This
patch fixes the bug, assigning "-ENOMEM" to ret before calling
mempool_create_slab_pool().

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=189061

Signed-off-by: Pan Bian <bianpan2016@xxxxxxx>
---
drivers/scsi/snic/snic_main.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/scsi/snic/snic_main.c b/drivers/scsi/snic/snic_main.c
index 396b32d..e8907e6 100644
--- a/drivers/scsi/snic/snic_main.c
+++ b/drivers/scsi/snic/snic_main.c
@@ -586,6 +586,7 @@
for (i = 0; i < SNIC_IO_LOCKS; i++)
spin_lock_init(&snic->io_req_lock[i]);

+ ret = -ENOMEM;
pool = mempool_create_slab_pool(2,
snic_glob->req_cache[SNIC_REQ_CACHE_DFLT_SGL]);
if (!pool) {
--
1.9.1