Commit 32b850a6 authored by Burak Ok's avatar Burak Ok Committed by Greg Kroah-Hartman

scsi: snic: Return error code on memory allocation failure


[ Upstream commit 0371adcd ]

If a call to mempool_create_slab_pool() in snic_probe() returns NULL,
return -ENOMEM to indicate failure. mempool_creat_slab_pool() only fails
if it cannot allocate memory.

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

Reported-by: bianpan2010@ruc.edu.cn
Signed-off-by: default avatarBurak Ok <burak-kernel@bur0k.de>
Signed-off-by: default avatarAndreas Schaertl <andreas.schaertl@fau.de>
Acked-by: default avatarNarsimhulu Musini <nmusini@cisco.com>
Reviewed-by: default avatarEwan D. Milne <emilne@redhat.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: default avatarSasha Levin <alexander.levin@verizon.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 27eb77b5
...@@ -584,6 +584,7 @@ snic_probe(struct pci_dev *pdev, const struct pci_device_id *ent) ...@@ -584,6 +584,7 @@ snic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
if (!pool) { if (!pool) {
SNIC_HOST_ERR(shost, "dflt sgl pool creation failed\n"); SNIC_HOST_ERR(shost, "dflt sgl pool creation failed\n");
ret = -ENOMEM;
goto err_free_res; goto err_free_res;
} }
...@@ -594,6 +595,7 @@ snic_probe(struct pci_dev *pdev, const struct pci_device_id *ent) ...@@ -594,6 +595,7 @@ snic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
if (!pool) { if (!pool) {
SNIC_HOST_ERR(shost, "max sgl pool creation failed\n"); SNIC_HOST_ERR(shost, "max sgl pool creation failed\n");
ret = -ENOMEM;
goto err_free_dflt_sgl_pool; goto err_free_dflt_sgl_pool;
} }
...@@ -604,6 +606,7 @@ snic_probe(struct pci_dev *pdev, const struct pci_device_id *ent) ...@@ -604,6 +606,7 @@ snic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
if (!pool) { if (!pool) {
SNIC_HOST_ERR(shost, "snic tmreq info pool creation failed.\n"); SNIC_HOST_ERR(shost, "snic tmreq info pool creation failed.\n");
ret = -ENOMEM;
goto err_free_max_sgl_pool; goto err_free_max_sgl_pool;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment