--- /dev/null
+From 8f14a96386b2676a1ccdd9d2f1732fbd7248fa98 Mon Sep 17 00:00:00 2001
+From: Arnd Bergmann <arnd@arndb.de>
+Date: Wed, 17 May 2023 15:10:50 +0200
+Subject: mm: page_poison: always declare __kernel_map_pages() function
+
+From: Arnd Bergmann <arnd@arndb.de>
+
+commit 8f14a96386b2676a1ccdd9d2f1732fbd7248fa98 upstream.
+
+The __kernel_map_pages() function is mainly used for
+CONFIG_DEBUG_PAGEALLOC, but has a number of architecture specific
+definitions that may also be used in other configurations, as well as a
+global fallback definition for architectures that do not support
+DEBUG_PAGEALLOC.
+
+When the option is disabled, any definitions without the prototype cause a
+warning:
+
+mm/page_poison.c:102:6: error: no previous prototype for '__kernel_map_pages' [-Werror=missing-prototypes]
+
+The function is a trivial nop here, so just declare it anyway
+to avoid the warning.
+
+Link: https://lkml.kernel.org/r/20230517131102.934196-3-arnd@kernel.org
+Signed-off-by: Arnd Bergmann <arnd@arndb.de>
+Cc: Boqun Feng <boqun.feng@gmail.com>
+Cc: Catalin Marinas <catalin.marinas@arm.com>
+Cc: Christoph Lameter <cl@linux.com>
+Cc: Dennis Zhou <dennis@kernel.org>
+Cc: Eric Paris <eparis@redhat.com>
+Cc: Heiko Carstens <hca@linux.ibm.com>
+Cc: Helge Deller <deller@gmx.de>
+Cc: Ingo Molnar <mingo@redhat.com>
+Cc: Michael Ellerman <mpe@ellerman.id.au>
+Cc: Michal Simek <monstr@monstr.eu>
+Cc: Palmer Dabbelt <palmer@dabbelt.com>
+Cc: Paul Moore <paul@paul-moore.com>
+Cc: Pavel Machek <pavel@ucw.cz>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Cc: Rafael J. Wysocki <rafael@kernel.org>
+Cc: Russell King <linux@armlinux.org.uk>
+Cc: Tejun Heo <tj@kernel.org>
+Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
+Cc: Thomas Gleixner <tglx@linutronix.de>
+Cc: Waiman Long <longman@redhat.com>
+Cc: Will Deacon <will@kernel.org>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Cc: Salvatore Bonaccorso <carnil@debian.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ include/linux/mm.h | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+--- a/include/linux/mm.h
++++ b/include/linux/mm.h
+@@ -3318,13 +3318,12 @@ static inline bool debug_pagealloc_enabl
+ return static_branch_unlikely(&_debug_pagealloc_enabled);
+ }
+
+-#ifdef CONFIG_DEBUG_PAGEALLOC
+ /*
+ * To support DEBUG_PAGEALLOC architecture must ensure that
+ * __kernel_map_pages() never fails
+ */
+ extern void __kernel_map_pages(struct page *page, int numpages, int enable);
+-
++#ifdef CONFIG_DEBUG_PAGEALLOC
+ static inline void debug_pagealloc_map_pages(struct page *page, int numpages)
+ {
+ if (debug_pagealloc_enabled_static())