[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [dm-devel] tiny patch: avoid an unnecessary test



Never mind - looking at the optimistic memory allocation stuff again, you'll
just get OOMed.

On Fri, Mar 16, 2007 at 08:47:02AM -0500, AJ Lewis wrote:
> Actually, there's a chance you'd get a NULL pointer error if you don't have
> that check if I'm reading the context right.  Linux doesn't guarantee malloc
> will return NULL if memory is unavailable, you only get the error when you
> attempt to write to memory.  So if there is an allocation error, you're only
> going to see it in the memset.
> 
> --
> AJ
> 
> On Fri, Mar 16, 2007 at 09:28:43AM +0100, Jim Meyering wrote:
> > Not a big deal (barely worth mentioning), but it might save
> > someone else a little time wondering "why".
> > 
> > 2007-03-11  Jim Meyering  <jim meyering net>
> > 
> > 	Remove unnecessary test.
> > 	* dmeventd/dmeventd.c (_alloc_dso_data): Don't test known-non-NULL
> > 	memset return value.
> > 
> > 2007-03-11  Jim Meyering  <jim meyering net>
> > Index: dmeventd/dmeventd.c
> > ===================================================================
> > RCS file: /cvs/dm/device-mapper/dmeventd/dmeventd.c,v
> > retrieving revision 1.46
> > diff -u -p -r1.46 dmeventd.c
> > --- dmeventd/dmeventd.c	2 Feb 2007 17:08:51 -0000	1.46
> > +++ dmeventd/dmeventd.c	12 Mar 2007 14:39:35 -0000
> > @@ -258,8 +258,8 @@ static struct dso_data *_alloc_dso_data(
> >  	if (!ret)
> >  		return NULL;
> > 
> > -	if (!memset(ret, 0, sizeof(*ret)) ||
> > -	    !(ret->dso_name = dm_strdup(data->dso_name))) {
> > +	memset(ret, 0, sizeof(*ret));
> > +	if (!(ret->dso_name = dm_strdup(data->dso_name))) {
> >  		dm_free(ret);
> >  		return NULL;
> >  	}
> > 
> > --
> > dm-devel mailing list
> > dm-devel redhat com
> > https://www.redhat.com/mailman/listinfo/dm-devel



> --
> dm-devel mailing list
> dm-devel redhat com
> https://www.redhat.com/mailman/listinfo/dm-devel

Attachment: pgp9Xa4QCIXoV.pgp
Description: PGP signature


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]