On Fri, Jan 11, 2019 at 07:26:09AM +0300, Konstantin Khlebnikov wrote:
> On Thu, Jan 10, 2019 at 11:45 PM Cong Wang <xiyou.wangc...@gmail.com> wrote:
> > On Tue, Jan 8, 2019 at 1:30 AM Konstantin Khlebnikov
> > <khlebni...@yandex-team.ru> wrote:
> > > @@ -443,12 +444,14 @@ static struct neigh_hash_table 
> > > *neigh_hash_alloc(unsigned int shift)
> > >         ret = kmalloc(sizeof(*ret), GFP_ATOMIC);
> > >         if (!ret)
> > >                 return NULL;
> > > -       if (size <= PAGE_SIZE)
> > > +       if (size <= PAGE_SIZE) {
> > >                 buckets = kzalloc(size, GFP_ATOMIC);
> > > -       else
> > > +       } else {
> > >                 buckets = (struct neighbour __rcu **)
> > >                           __get_free_pages(GFP_ATOMIC | __GFP_ZERO,
> > >                                            get_order(size));
> > > +               kmemleak_alloc(buckets, size, 0, GFP_ATOMIC);
> >
> > Why min_count is 0 rather than 1 here?
> 
> The api isn't clear and I've misread description.
> So it should be 1 for reporting leak of hash table itself.
> But 0 doesn't add any new issues.

Correct. I'd say it makes sense to set it to 1 so that you'd have
similar behaviour to the kzalloc() allocation.


-- 
Catalin

Reply via email to