arm64: Force NO_BLOCK_MAPPINGS if crashkernel reservation is required
authorCatalin Marinas <catalin.marinas@arm.com>
Thu, 19 Nov 2020 17:55:56 +0000 (17:55 +0000)
committerSasha Levin <sashal@kernel.org>
Wed, 30 Jun 2021 12:47:17 +0000 (08:47 -0400)
commit50a1312a29d178000b48f34aa4ffbb11636ed5dc
tree2f2b060c55032506644cc22ea812c8b661a5586c
parentbd5d4df4dcc1f2d1ceac7b167df1e699a7f6deb7
arm64: Force NO_BLOCK_MAPPINGS if crashkernel reservation is required

commit 2687275a5843d1089687f08fc64eb3f3b026a169 upstream.

mem_init() currently relies on knowing the boundaries of the crashkernel
reservation to map such region with page granularity for later
unmapping via set_memory_valid(..., 0). If the crashkernel reservation
is deferred, such boundaries are not known when the linear mapping is
created. Simply parse the command line for "crashkernel" and, if found,
create the linear map with NO_BLOCK_MAPPINGS.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Tested-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Reviewed-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Acked-by: James Morse <james.morse@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Link: https://lore.kernel.org/r/20201119175556.18681-1-catalin.marinas@arm.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm64/mm/mmu.c