From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757838AbcLUQbm (ORCPT ); Wed, 21 Dec 2016 11:31:42 -0500 Received: from mx1.redhat.com ([209.132.183.28]:53002 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750919AbcLUQbk (ORCPT ); Wed, 21 Dec 2016 11:31:40 -0500 Subject: Re: [PATCH] snic: Return error code on memory allocation failure From: "Ewan D. Milne" Reply-To: emilne@redhat.com To: Burak Ok Cc: linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org, Martin K Petersen , James E J Bottomley , Sesidhar Baddela , Karan Tilak Kumar , Narsimhulu Musini , linux-kernel@i4.cs.fau.de, Andreas Schaertl In-Reply-To: <1482327953-4140-1-git-send-email-burak-kernel@bur0k.de> References: <1482327953-4140-1-git-send-email-burak-kernel@bur0k.de> Content-Type: text/plain; charset="UTF-8" Organization: Red Hat Date: Wed, 21 Dec 2016 11:31:37 -0500 Message-ID: <1482337897.8200.83.camel@localhost.localdomain> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Wed, 21 Dec 2016 16:31:40 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 2016-12-21 at 14:45 +0100, Burak Ok wrote: > 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: Burak Ok > Signed-off-by: Andreas Schaertl > --- > drivers/scsi/snic/snic_main.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/scsi/snic/snic_main.c b/drivers/scsi/snic/snic_main.c > index 396b32d..7cf70aa 100644 > --- a/drivers/scsi/snic/snic_main.c > +++ b/drivers/scsi/snic/snic_main.c > @@ -591,6 +591,7 @@ snic_probe(struct pci_dev *pdev, const struct pci_device_id *ent) > if (!pool) { > SNIC_HOST_ERR(shost, "dflt sgl pool creation failed\n"); > > + ret = -ENOMEM; > goto err_free_res; > } > > @@ -601,6 +602,7 @@ snic_probe(struct pci_dev *pdev, const struct pci_device_id *ent) > if (!pool) { > SNIC_HOST_ERR(shost, "max sgl pool creation failed\n"); > > + ret = -ENOMEM; > goto err_free_dflt_sgl_pool; > } > > @@ -611,6 +613,7 @@ snic_probe(struct pci_dev *pdev, const struct pci_device_id *ent) > if (!pool) { > SNIC_HOST_ERR(shost, "snic tmreq info pool creation failed.\n"); > > + ret = -ENOMEM; > goto err_free_max_sgl_pool; > } > Reviewed-by: Ewan D. Milne