Re: [PATCH] likely cleanup: remove unlikely for kfree(NULL)

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

 



On Wed, Apr 26, 2006 at 10:27:18AM +0200, Arjan van de Ven wrote:
> On Wed, 2006-04-26 at 11:16 +0300, Pekka J Enberg wrote:
> > On 4/25/06, Hua Zhong <[email protected]> wrote:
> > > > > diff --git a/mm/slab.c b/mm/slab.c
> > > > > index e6ef9bd..0fbc854 100644
> > > > > --- a/mm/slab.c
> > > > > +++ b/mm/slab.c
> > > > > @@ -3380,7 +3380,7 @@ void kfree(const void *objp)
> > > > >         struct kmem_cache *c;
> > > > >         unsigned long flags;
> > > > >
> > > > > -       if (unlikely(!objp))
> > > > > +       if (!objp)
> > > > >                 return;
> > 
> > > On Wed, 2006-04-26 at 10:30 +0300, Pekka Enberg wrote:
> > > > NAK. Fix the callers instead.
> > 
> > On Wed, 26 Apr 2006, Arjan van de Ven wrote:
> > > eh dude... they are being fixed... to remove the NULL check :)
> > 
> > Most of which are on error paths. The problem we're seeing is in handful 
> > of fastpath offenders which should be fixed either by re-design or adding 
> > the NULL check along with a big fat comment like Andrew is doing.
> 
> what I would like is kfree to become an inline wrapper that does the
> null check inline, that way gcc can optimize it out (and it will in 4.1
> with the VRP pass) if gcc can prove it's not NULL.

In many cases it's not clear at compile time whether it will be NULL.

In such cases, your suggestion would result in bigger code.

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux