2021-05-12 03:52:59

by Matthew Wilcox

[permalink] [raw]
Subject: Re: arm32: panic in move_freepages (Was [PATCH v2 0/4] arm64: drop pfn_valid_within() and simplify pfn_valid())

On Sun, Apr 25, 2021 at 03:51:56PM +0800, Kefeng Wang wrote:
> we see the PC is at PageLRU, same reason like arm64 panic log,
>
> "PageBuddy in move_freepages returns false Then we call PageLRU, the macro
> calls PF_HEAD which is compound_page() compound_page reads
> page->compound_head, it is 0xffffffffffffffff, so it resturns
> 0xfffffffffffffffe - and accessing this address causes crash"

Oh. I posted patches to fix this back in 2018.

https://lore.kernel.org/linux-mm/[email protected]/

and 2019.

https://lore.kernel.org/linux-mm/[email protected]/

and 2020.

https://lore.kernel.org/linux-mm/[email protected]/

Looks like it's about that time of year for me to try to fix this again.