Re: [External] Re: [PATCH] mm/memcg: fix NULL pointer dereference at workingset_eviction

From: Vlastimil Babka
Date: Mon Nov 30 2020 - 10:58:50 EST


On 11/30/20 2:45 PM, Michal Hocko wrote:
On Mon 30-11-20 21:36:49, Muchun Song wrote:
On Mon, Nov 30, 2020 at 9:23 PM Michal Hocko <mhocko@xxxxxxxx> wrote:
>
> On Mon 30-11-20 21:15:12, Muchun Song wrote:
> > We found a case of kernel panic. The stack trace is as follows
> > (omit some irrelevant information):
> >
> > BUG: kernel NULL pointer dereference, address: 00000000000000c8
> > RIP: 0010:workingset_eviction+0x26b/0x450
> > Call Trace:
> > __remove_mapping+0x224/0x2b0
> > shrink_page_list+0x8c2/0x14e0
> > shrink_inactive_list+0x1bf/0x3f0
> > ? do_raw_spin_unlock+0x49/0xc0
> > ? _raw_spin_unlock+0xa/0x20
> > shrink_lruvec+0x401/0x640
> >
> > This was caused by commit 76761ffa9ea1 ("mm/memcg: bail out early when
> > !memcg in mem_cgroup_lruvec"). When the parameter of memcg is NULL, we
> > should not use the &pgdat->__lruvec. So this just reverts commit
> > 76761ffa9ea1 to fix it.
> >
> > Fixes: 76761ffa9ea1 ("mm/memcg: bail out early when !memcg in mem_cgroup_lruvec")
>
> I do not see any commits like that in the current Linus tree. Is this a
> commit id from the linux-next? If yes, can we just fold it into the
> respective patch in mmotm tree please?

Yes. This commit is on the linux-next tree.

FYI, patches coming from mmotm are constantly rebased in linux-next so
the sha1 is meaningless and shouldn't be added as a reference in the
changelog.

Of course can.

Thanks! I believe Andrew should be able to just pick up the patch and
make it -fix patch.

Well the fix is a revert, so just remove the patch from mmotm/next?
BTW, looks like it wasn't sent to linux-mm [1], looks like missing To: header.

[1] https://lore.kernel.org/lkml/1606446515-36069-1-git-send-email-alex.shi@xxxxxxxxxxxxxxxxx/