kasan: rename kasan_zero_page to kasan_early_shadow_page
With tag based KASAN mode the early shadow value is 0xff and not 0x00, so this patch renames kasan_zero_(page|pte|pmd|pud|p4d) to kasan_early_shadow_(page|pte|pmd|pud|p4d) to avoid confusion. Link: http://lkml.kernel.org/r/3fed313280ebf4f88645f5b89ccbc066d320e177.1544099024.git.andreyknvl@google.com Signed-off-by: Andrey Konovalov <andreyknvl@google.com> Suggested-by: Mark Rutland <mark.rutland@arm.com> Cc: Andrey Ryabinin <aryabinin@virtuozzo.com> Cc: Christoph Lameter <cl@linux.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: Will Deacon <will.deacon@arm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
このコミットが含まれているのは:
@@ -24,12 +24,13 @@ void __init kasan_early_init(void)
|
||||
int i;
|
||||
|
||||
for (i = 0; i < PTRS_PER_PTE; ++i)
|
||||
set_pte(kasan_zero_pte + i,
|
||||
mk_pte(virt_to_page(kasan_zero_page), PAGE_KERNEL));
|
||||
set_pte(kasan_early_shadow_pte + i,
|
||||
mk_pte(virt_to_page(kasan_early_shadow_page),
|
||||
PAGE_KERNEL));
|
||||
|
||||
for (vaddr = 0; vaddr < KASAN_SHADOW_SIZE; vaddr += PMD_SIZE, ++pmd) {
|
||||
BUG_ON(!pmd_none(*pmd));
|
||||
set_pmd(pmd, __pmd((unsigned long)kasan_zero_pte));
|
||||
set_pmd(pmd, __pmd((unsigned long)kasan_early_shadow_pte));
|
||||
}
|
||||
early_trap_init();
|
||||
}
|
||||
@@ -80,13 +81,16 @@ void __init kasan_init(void)
|
||||
populate(kasan_mem_to_shadow((void *)VMALLOC_START),
|
||||
kasan_mem_to_shadow((void *)XCHAL_KSEG_BYPASS_VADDR));
|
||||
|
||||
/* Write protect kasan_zero_page and zero-initialize it again. */
|
||||
/*
|
||||
* Write protect kasan_early_shadow_page and zero-initialize it again.
|
||||
*/
|
||||
for (i = 0; i < PTRS_PER_PTE; ++i)
|
||||
set_pte(kasan_zero_pte + i,
|
||||
mk_pte(virt_to_page(kasan_zero_page), PAGE_KERNEL_RO));
|
||||
set_pte(kasan_early_shadow_pte + i,
|
||||
mk_pte(virt_to_page(kasan_early_shadow_page),
|
||||
PAGE_KERNEL_RO));
|
||||
|
||||
local_flush_tlb_all();
|
||||
memset(kasan_zero_page, 0, PAGE_SIZE);
|
||||
memset(kasan_early_shadow_page, 0, PAGE_SIZE);
|
||||
|
||||
/* At this point kasan is fully initialized. Enable error messages. */
|
||||
current->kasan_depth = 0;
|
||||
|
新しいイシューから参照
ユーザーをブロックする