On 29.04.2020 13:32, Andrew Cooper wrote:
> On 29/04/2020 12:16, Jan Beulich wrote:
>> On 29.04.2020 13:09, Andrew Cooper wrote:
>>> --- a/xen/arch/x86/boot/trampoline.S
>>> +++ b/xen/arch/x86/boot/trampoline.S
>>> @@ -91,6 +91,11 @@ trampoline_protmode_entry:
>>>          and     %edi,%edx
>>>          wrmsr
>>>  1:
>>> +        /* Set up PAT before enabling paging. */
>>> +        mov     $XEN_MSR_PAT & 0xffffffff, %eax
>>> +        mov     $XEN_MSR_PAT >> 32, %edx
>>> +        mov     $MSR_IA32_CR_PAT, %ecx
>>> +        wrmsr
>> Doesn't this also eliminate the need for cpu_init() doing this?
>> If you agree with that one also dropped
>> Reviewed-by: Jan Beulich <jbeul...@suse.com>
> 
> That doesn't cover the BSP on either the legacy or EFI paths.

The legacy path, afaict, uses it:

.Lskip_realmode:
        /* EBX == 0 indicates we are the BP (Boot Processor). */
        xor     %ebx,%ebx

        /* Jump to the common bootstrap entry point. */
        jmp     trampoline_protmode_entry

The xen.efi entry path really should have the change you make
mirrored anyway.

Jan

Reply via email to