Let's print a warning similar to in arch_add_linear_mapping() instead of WARN_ON_ONCE() and eventually crashing the kernel.
Cc: Michael Ellerman <m...@ellerman.id.au> Cc: Benjamin Herrenschmidt <b...@kernel.crashing.org> Cc: Paul Mackerras <pau...@samba.org> Cc: Rashmica Gupta <rashmic...@gmail.com> Cc: Andrew Morton <a...@linux-foundation.org> Cc: Mike Rapoport <r...@kernel.org> Cc: Michal Hocko <mho...@suse.com> Cc: Oscar Salvador <osalva...@suse.de> Cc: Wei Yang <richard.weiy...@linux.alibaba.com> Signed-off-by: David Hildenbrand <da...@redhat.com> --- arch/powerpc/mm/mem.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c index 8a86d81f8df0..685028451dd2 100644 --- a/arch/powerpc/mm/mem.c +++ b/arch/powerpc/mm/mem.c @@ -145,7 +145,9 @@ void __ref arch_remove_linear_mapping(u64 start, u64 size) flush_dcache_range_chunked(start, start + size, FLUSH_CHUNK_SIZE); ret = remove_section_mapping(start, start + size); - WARN_ON_ONCE(ret); + if (ret) + pr_warn("Unable to remove linear mapping for 0x%llx..0x%llx: %d\n", + start, start + size, ret); /* Ensure all vmalloc mappings are flushed in case they also * hit that section of memory -- 2.26.2