[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <cover.1632437225.git.quic_cgoldswo@quicinc.com>
Date: Thu, 23 Sep 2021 15:54:47 -0700
From: Chris Goldsworthy <quic_cgoldswo@...cinc.com>
To: Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>
CC: David Hildenbrand <david@...hat.com>,
<linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>, <linux-mm@...ck.org>,
Chris Goldsworthy <quic_cgoldswo@...cinc.com>
Subject: [RFC] arm64: mm: update max_pfn after memory hotplug
On arm64 we set max_pfn at boot in arch/arm64/mm/init.c. If you
hotplug in memory after booting up, max_pfn is not updated. This
breaks diagnostic functions executed from user space like
read_page_owner():
https://elixir.bootlin.com/linux/v5.14.7/source/mm/page_owner.c#L472
or kpageflags_read() (see how get_max_dump_pfn() is used):
https://elixir.bootlin.com/linux/v5.14.7/source/fs/proc/page.c#L47
Thus, this patch updates max_pfn and max_low_pfn in arm64's
arch_add_memory() function, mirroring what is updatated during boot:
https://elixir.bootlin.com/linux/v5.14.7/source/arch/arm64/mm/init.c#L448
We would appreciate feedback on any other variables that should be
updated when hotplugging in memory - note that we're mirroring x86, in
that max_pfn is only ever incremented when calling arch_add_memory():
https://elixir.bootlin.com/linux/v5.14.7/source/arch/x86/mm/init_64.c#L958
Sudarshan Rajagopalan (1):
arm64: mm: update max_pfn after memory hotplug
arch/arm64/mm/mmu.c | 5 +++++
1 file changed, 5 insertions(+)
--
2.7.4
Powered by blists - more mailing lists