Re: [PATCH] kmemleak: fix kmemleak false positive report with HW tag-based kasan enable

From: Kuan-Ying Lee
Date: Tue Nov 23 2021 - 21:00:52 EST


On Sat, 2021-11-20 at 06:43 +0800, Andrew Morton wrote:
> On Fri, 19 Nov 2021 23:12:55 +0800 Kuan-Ying Lee <
> Kuan-Ying.Lee@xxxxxxxxxxxx> wrote:
>
> > > > > Call sequence:
> > > > > ptr = kmalloc(size, GFP_KERNEL);
> > > > > page = virt_to_page(ptr);
> > > > > kfree(page_address(page));
> > > > > ptr = kmalloc(size, GFP_KERNEL);
> > >
> > > How is this call sequence valid? page_address returns the address
> > > of
> > > the start of the page, while kmalloced object could have been
> > > located
> > > in the middle of it.
> >
> > Thanks for pointing out. I miss the offset.
> >
> > It should be listed as below.
> >
> > ptr = kmalloc(size, GFP_KERNEL);
> > page = virt_to_page(ptr);
> > offset = offset_in_page(ptr);
> > kfree(page_address(page) + offset);
> > ptr = kmalloc(size, GFP_KERNEL);
>
> I updated the changelog to reflect this.

Thanks for updating changelog. :)