Loading arch/riscv/mm/kasan_init.c +15 −11 Original line number Diff line number Diff line Loading @@ -23,13 +23,15 @@ asmlinkage void __init kasan_early_init(void) for (i = 0; i < PTRS_PER_PMD; ++i) set_pmd(kasan_early_shadow_pmd + i, pfn_pmd(PFN_DOWN(__pa((uintptr_t)kasan_early_shadow_pte)), pfn_pmd(PFN_DOWN (__pa((uintptr_t) kasan_early_shadow_pte)), __pgprot(_PAGE_TABLE))); for (i = KASAN_SHADOW_START; i < KASAN_SHADOW_END; i += PGDIR_SIZE, ++pgd) set_pgd(pgd, pfn_pgd(PFN_DOWN(__pa(((uintptr_t)kasan_early_shadow_pmd))), pfn_pgd(PFN_DOWN (__pa(((uintptr_t) kasan_early_shadow_pmd))), __pgprot(_PAGE_TABLE))); /* init for swapper_pg_dir */ Loading @@ -38,7 +40,8 @@ asmlinkage void __init kasan_early_init(void) for (i = KASAN_SHADOW_START; i < KASAN_SHADOW_END; i += PGDIR_SIZE, ++pgd) set_pgd(pgd, pfn_pgd(PFN_DOWN(__pa(((uintptr_t)kasan_early_shadow_pmd))), pfn_pgd(PFN_DOWN (__pa(((uintptr_t) kasan_early_shadow_pmd))), __pgprot(_PAGE_TABLE))); flush_tlb_all(); Loading Loading @@ -86,7 +89,8 @@ void __init kasan_init(void) unsigned long i; kasan_populate_early_shadow((void *)KASAN_SHADOW_START, (void *)kasan_mem_to_shadow((void *)VMALLOC_END)); (void *)kasan_mem_to_shadow((void *) VMALLOC_END)); for_each_memblock(memory, reg) { void *start = (void *)__va(reg->base); Loading @@ -95,14 +99,14 @@ void __init kasan_init(void) if (start >= end) break; populate(kasan_mem_to_shadow(start), kasan_mem_to_shadow(end)); populate(kasan_mem_to_shadow(start), kasan_mem_to_shadow(end)); }; for (i = 0; i < PTRS_PER_PTE; i++) set_pte(&kasan_early_shadow_pte[i], mk_pte(virt_to_page(kasan_early_shadow_page), __pgprot(_PAGE_PRESENT | _PAGE_READ | _PAGE_ACCESSED))); __pgprot(_PAGE_PRESENT | _PAGE_READ | _PAGE_ACCESSED))); memset(kasan_early_shadow_page, 0, PAGE_SIZE); init_task.kasan_depth = 0; Loading Loading
arch/riscv/mm/kasan_init.c +15 −11 Original line number Diff line number Diff line Loading @@ -23,13 +23,15 @@ asmlinkage void __init kasan_early_init(void) for (i = 0; i < PTRS_PER_PMD; ++i) set_pmd(kasan_early_shadow_pmd + i, pfn_pmd(PFN_DOWN(__pa((uintptr_t)kasan_early_shadow_pte)), pfn_pmd(PFN_DOWN (__pa((uintptr_t) kasan_early_shadow_pte)), __pgprot(_PAGE_TABLE))); for (i = KASAN_SHADOW_START; i < KASAN_SHADOW_END; i += PGDIR_SIZE, ++pgd) set_pgd(pgd, pfn_pgd(PFN_DOWN(__pa(((uintptr_t)kasan_early_shadow_pmd))), pfn_pgd(PFN_DOWN (__pa(((uintptr_t) kasan_early_shadow_pmd))), __pgprot(_PAGE_TABLE))); /* init for swapper_pg_dir */ Loading @@ -38,7 +40,8 @@ asmlinkage void __init kasan_early_init(void) for (i = KASAN_SHADOW_START; i < KASAN_SHADOW_END; i += PGDIR_SIZE, ++pgd) set_pgd(pgd, pfn_pgd(PFN_DOWN(__pa(((uintptr_t)kasan_early_shadow_pmd))), pfn_pgd(PFN_DOWN (__pa(((uintptr_t) kasan_early_shadow_pmd))), __pgprot(_PAGE_TABLE))); flush_tlb_all(); Loading Loading @@ -86,7 +89,8 @@ void __init kasan_init(void) unsigned long i; kasan_populate_early_shadow((void *)KASAN_SHADOW_START, (void *)kasan_mem_to_shadow((void *)VMALLOC_END)); (void *)kasan_mem_to_shadow((void *) VMALLOC_END)); for_each_memblock(memory, reg) { void *start = (void *)__va(reg->base); Loading @@ -95,14 +99,14 @@ void __init kasan_init(void) if (start >= end) break; populate(kasan_mem_to_shadow(start), kasan_mem_to_shadow(end)); populate(kasan_mem_to_shadow(start), kasan_mem_to_shadow(end)); }; for (i = 0; i < PTRS_PER_PTE; i++) set_pte(&kasan_early_shadow_pte[i], mk_pte(virt_to_page(kasan_early_shadow_page), __pgprot(_PAGE_PRESENT | _PAGE_READ | _PAGE_ACCESSED))); __pgprot(_PAGE_PRESENT | _PAGE_READ | _PAGE_ACCESSED))); memset(kasan_early_shadow_page, 0, PAGE_SIZE); init_task.kasan_depth = 0; Loading