diff --git a/arch/x86/kernel/entry64.asm b/arch/x86/kernel/entry64.asm index 357950cd..00b3697f 100644 --- a/arch/x86/kernel/entry64.asm +++ b/arch/x86/kernel/entry64.asm @@ -256,6 +256,16 @@ La: or ebx, 0x00000013 mov DWORD [edi], ebx + ; map mp_config + mov edi, [eax+4] + and edi, 0xFFFFF000 + shr edi, 9 ; (edi >> 12) * 8 + add edi, boot_pt + mov ebx, [eax+4] + and ebx, 0xFFFFF000 + or ebx, 0x00000013 + mov DWORD [edi], ebx + Lb: mov edi, kernel_start shr edi, 9 ; (kernel_start >> 12) * 8