#ifdef CONFIG_KASAN
 void kasan_early_init(void);
+void kasan_mmu_init(void);
 void kasan_init(void);
 void kasan_late_init(void);
 #else
 static inline void kasan_init(void) { }
+static inline void kasan_mmu_init(void) { }
 static inline void kasan_late_init(void) { }
 #endif
 
 
        btext_unmap();
 #endif
 
+       kasan_mmu_init();
+
        setup_kup();
 
        /* Shortly after that, the entire linear mapping will be available */
 
        kasan_update_early_region(k_start, k_end, __pte(0));
 }
 
-static void __init kasan_mmu_init(void)
+void __init kasan_mmu_init(void)
 {
        int ret;
        struct memblock_region *reg;
 
 void __init kasan_init(void)
 {
-       kasan_mmu_init();
-
        kasan_remap_early_shadow_ro();
 
        clear_page(kasan_early_shadow_page);