From: George Guo When CONFIG_KFENCE is enabled, the virt_to_phys() and phys_to_virt() macros in arch/loongarch/include/asm/io.h expand to use offset_in_page() and page_address(), both of which are declared in . Without this include, any translation unit that includes and expands these macros with CONFIG_KFENCE=y will fail to build. This was observed when building kernel/liveupdate/luo_session.c with CONFIG_KFENCE=y: asm/io.h: error: implicit declaration of function 'offset_in_page' asm/io.h: error: implicit declaration of function 'page_address' Add the missing include to fix these build errors. Fixes: 0ca84aeaee15 ("LoongArch: Make {virt, phys, page, pfn} translation work with KFENCE") Co-developed-by: Kexin Liu Signed-off-by: Kexin Liu Signed-off-by: George Guo --- arch/loongarch/include/asm/io.h | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/loongarch/include/asm/io.h b/arch/loongarch/include/asm/io.h index 0130185e0349..7ff4aa72a34a 100644 --- a/arch/loongarch/include/asm/io.h +++ b/arch/loongarch/include/asm/io.h @@ -13,6 +13,7 @@ #include #include #include +#include extern void __init __iomem *early_ioremap(phys_addr_t phys_addr, unsigned long size); extern void __init early_iounmap(void __iomem *addr, unsigned long size); -- 2.25.1