Re: [linux-next:master] [mm,page_owner] 4bedfb314b: BUG:KASAN:null-ptr-deref_in_init_page_owner

From: Oscar Salvador
Date: Tue Mar 05 2024 - 13:37:43 EST


On Tue, Mar 05, 2024 at 07:32:02PM +0100, Oscar Salvador wrote:
> On Tue, Mar 05, 2024 at 02:02:35PM +0100, Marco Elver wrote:
> > On Tue, 5 Mar 2024 at 10:26, Oscar Salvador <osalvador@xxxxxxx> wrote:
> > > Marco, could it be that stackdepot was too overloaded, that by the time
> > > page_owner gets initialized, there are no more space for its stacks, and
> > > hence return 0-handles?.
> >
> > That's possible. But it's unclear to me what exactly happens. Are you
> > able to reproduce the issue? (I haven't been able to because the
> > config enables CFI which seems to cause other issues for me,
> > presumably toolchain related. :-/ )
>
> I am out of luck here, I cannot reproduce the issue.
> I set up the environment just as [1] says, building the kernel with
> their config and launching bin/lkp just as [1] states, but it
> boots fine here.

But they point out to

commit 4bedfb314bdd85c1662ecc46fa25b33b998f994d (HEAD, bisection)
Author: Oscar Salvador <osalvador@xxxxxxx>
Date: Thu Feb 15 22:59:03 2024 +0100

mm,page_owner: maintain own list of stack_records structs

which the only thing it does is to retrieve the stack_record for
{dummy,failure}.handle and increment their refcount and link them.
I am pretty sure the problem comes from either dummy_handle or
failure_handle being 0 and the stack_record we get is NULL.

I will come up with a patch to guard this scenario, although I did not
think this could happen at this early stage (stack_records returning
NULL).


--
Oscar Salvador
SUSE Labs