Prev: [PATCH 2/5] drivers/dma: Return -ENOMEM on memory allocation failure
Next: convert reiserfs to ->evict_inode()
From: Desai, Kashyap on 11 Aug 2010 06:30 > -----Original Message----- > From: Julia Lawall [mailto:julia(a)diku.dk] > Sent: Wednesday, August 11, 2010 3:41 PM > To: Moore, Eric; Support, Software; DL-MPT Fusion Linux; linux- > scsi(a)vger.kernel.org; linux-kernel(a)vger.kernel.org; kernel- > janitors(a)vger.kernel.org > Subject: [PATCH 3/5] drivers/message/fusion: Return -ENOMEM on memory > allocation failure > > From: Julia Lawall <julia(a)diku.dk> > > In this code, 0 is returned on memory allocation failure, even though > other > failures return -ENOMEM or other similar values. > > A simplified version of the semantic match that finds this problem is > as > follows: (http://coccinelle.lip6.fr/) > > // <smpl> > @@ > expression ret; > expression x,e1,e2,e3; > @@ > > ret = 0 > ... when != ret = e1 > *x = \(kmalloc\|kcalloc\|kzalloc\)(...) > ... when != ret = e2 > if (x == NULL) { ... when != ret = e3 > return ret; > } > // </smpl> > > Signed-off-by: Julia Lawall <julia(a)diku.dk> > > --- > drivers/message/fusion/mptbase.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/message/fusion/mptbase.c > b/drivers/message/fusion/mptbase.c > index d8c668d..49f8ec1 100644 > --- a/drivers/message/fusion/mptbase.c > +++ b/drivers/message/fusion/mptbase.c > @@ -5954,8 +5954,10 @@ mpt_findImVolumes(MPT_ADAPTER *ioc) > goto out; > > mem = kmalloc(iocpage2sz, GFP_KERNEL); > - if (!mem) > + if (!mem) { > + rc = -ENOMEM; > goto out; > + } ACKed. Thanks, Kashyap > > memcpy(mem, (u8 *)pIoc2, iocpage2sz); > ioc->raid_data.pIocPg2 = (IOCPage2_t *) mem; -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |