Re: [patch V4 01/32] mm/slab: Fix broken stack trace storage

From: Thomas Gleixner
Date: Mon Apr 15 2019 - 17:22:24 EST


On Mon, 15 Apr 2019, Andy Lutomirski wrote:
> On Mon, Apr 15, 2019 at 9:17 AM Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
> > On Mon, Apr 15, 2019 at 06:07:44PM +0200, Thomas Gleixner wrote:
> > > > Looks like stack_trace.nr_entries isn't initialized? (though this code
> > > > gets eventually replaced by a later patch)
> > >
> > > struct initializer initialized the non mentioned fields to 0, if I'm not
> > > totally mistaken.
> >
> > Hm, it seems you are correct. And I thought I knew C.
> >
> > > > Who actually reads this stack trace? I couldn't find a consumer.
> > >
> > > It's stored directly in the memory pointed to by @addr and that's the freed
> > > cache memory. If that is used later (UAF) then the stack trace can be
> > > printed to see where it was freed.
> >
> > Right... but who reads it?
>
> That seems like a reasonable question. After some grepping and some
> git searching, it looks like there might not be any users. I found

Anymore. There was something 10y+ ago...

> SLAB_STORE_USER, but that seems to be independent.
>
> So maybe the whole mess should just be deleted. If anyone ever
> notices, they can re-add it better.

No objections from my side, but the mm people might have opinions.

Thanks,

tglx