[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ZbJ1H77MtNkko02P@tassilo>
Date: Thu, 25 Jan 2024 06:50:07 -0800
From: Andi Kleen <ak@...ux.intel.com>
To: "Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>
Cc: Thomas Gleixner <tglx@...utronix.de>, Ingo Molnar <mingo@...hat.com>,
Borislav Petkov <bp@...en8.de>,
Dave Hansen <dave.hansen@...ux.intel.com>, x86@...nel.org,
"H. Peter Anvin" <hpa@...or.com>, linux-kernel@...r.kernel.org,
Kai Huang <kai.huang@...el.com>,
Sean Christopherson <seanjc@...gle.com>
Subject: Re: [PATCHv3, RESEND] x86/trampoline: Bypass compat mode in
trampoline_start64() if not needed
> I think it is cleaner to switch to IRET here. Does this work for you?
>
> diff --git a/arch/x86/realmode/rm/trampoline_64.S b/arch/x86/realmode/rm/trampoline_64.S
> index 608f108cba7d..14d9c7daf90f 100644
> --- a/arch/x86/realmode/rm/trampoline_64.S
> +++ b/arch/x86/realmode/rm/trampoline_64.S
> @@ -243,7 +243,9 @@ SYM_CODE_START(trampoline_start64)
> movl $pa_trampoline_pgd, %eax
> movq %rax, %cr3
>
> - jmpq *tr_start(%rip)
> + pushq $__KERNEL_CS
> + pushq tr_start(%rip)
> + lretq
Looks good. Thanks.
-Andi
Powered by blists - more mailing lists