[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZL2y1oaObNrnMHE8@liuwe-devbox-debian-v2>
Date: Sun, 23 Jul 2023 23:08:06 +0000
From: Wei Liu <wei.liu@...nel.org>
To: Michael Kelley <mikelley@...rosoft.com>
Cc: kys@...rosoft.com, haiyangz@...rosoft.com, wei.liu@...nel.org,
decui@...rosoft.com, tglx@...utronix.de, mingo@...hat.com,
bp@...en8.de, dave.hansen@...ux.intel.com, hpa@...or.com,
peterz@...radead.org, x86@...nel.org, linux-kernel@...r.kernel.org,
linux-hyperv@...r.kernel.org, stable@...r.kernel.org
Subject: Re: [PATCH v2 1/1] x86/hyperv: Disable IBT when hypercall page lacks
ENDBR instruction
On Fri, Jul 21, 2023 at 09:51:16PM -0700, Michael Kelley wrote:
> On hardware that supports Indirect Branch Tracking (IBT), Hyper-V VMs
> with ConfigVersion 9.3 or later support IBT in the guest. However,
> current versions of Hyper-V have a bug in that there's not an ENDBR64
> instruction at the beginning of the hypercall page. Since hypercalls are
> made with an indirect call to the hypercall page, all hypercall attempts
> fail with an exception and Linux panics.
>
> A Hyper-V fix is in progress to add ENDBR64. But guard against the Linux
> panic by clearing X86_FEATURE_IBT if the hypercall page doesn't start
> with ENDBR. The VM will boot and run without IBT.
>
> If future Linux 32-bit kernels were to support IBT, additional hypercall
> page hackery would be needed to make IBT work for such kernels in a
> Hyper-V VM.
>
> Cc: stable@...r.kernel.org
> Signed-off-by: Michael Kelley <mikelley@...rosoft.com>
Applied to hyperv-fixes. Thanks.
Powered by blists - more mailing lists