diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c index 27de2435e0080f419e3c5ac7386f710b993a93cd..306049edd55322a3c5aec4c7acdf3e38e224eda6 100644 --- a/arch/x86/mm/init_64.c +++ b/arch/x86/mm/init_64.c @@ -644,7 +644,7 @@ static unsigned long __init kernel_physical_mapping_init(unsigned long start, unsigned long pud_phys; pud_t *pud; - next = start + PGDIR_SIZE; + next = (start + PGDIR_SIZE) & PGDIR_MASK; if (next > end) next = end;