arm64 regression in kernel 5.12 related to the (n)VHE
Rafał Miłecki
zajec5 at gmail.com
Wed Aug 11 20:59:30 PDT 2021
On 11.08.2021 14:15, Rafał Miłecki wrote:
> All I could do to help debugging this regression was bisecting. The
> first bad commit (I verified it after bisecting process) is:
>
> commit 0c93df9622d4d921bcd0dc83f71fed9e98f5119f
> Author: Marc Zyngier <maz at kernel.org>
> Date: Mon Feb 8 09:57:14 2021 +0000
>
> arm64: Initialise as nVHE before switching to VHE
>
> As we are aiming to be able to control whether we enable VHE or
> not, let's always drop down to EL1 first, and only then upgrade
> to VHE if at all possible.
>
> This means that if the kernel is booted at EL2, we always start
> with a nVHE init, drop to EL1 to initialise the the kernel, and
> only then upgrade the kernel EL to EL2 if possible (the process
> is obviously shortened for secondary CPUs).
>
> The resume path is handled similarly to a secondary CPU boot.
>
> Signed-off-by: Marc Zyngier <maz at kernel.org>
> Acked-by: David Brazdil <dbrazdil at google.com>
> Acked-by: Catalin Marinas <catalin.marinas at arm.com>
> Link: https://lore.kernel.org/r/20210208095732.3267263-6-maz@kernel.org
> [will: Avoid calling switch_to_vhe twice on kaslr path]
> Signed-off-by: Will Deacon <will at kernel.org>
FWIW I confirmed it's about the above commit.
***
On top of 5.12.19 I can do:
git revert \
d077cb3cb90470f8bd7dbe357a474e13589390b9 \
e2df464173f0b585adb958a09536eae2cd1dbefd \
0c93df9622d4d921bcd0dc83f71fed9e98f5119f
to get a booting kernel (the first 2 commits need to be reverted to
allow a clean revert of the 0c93df9622d4).
***
On top of 5.13.9 I can do:
git revert \
2d726d0db6ac479d91bf74490455badd34af6b1d \
d077cb3cb90470f8bd7dbe357a474e13589390b9 \
e2df464173f0b585adb958a09536eae2cd1dbefd \
0c93df9622d4d921bcd0dc83f71fed9e98f5119f
to get a booting kernel too.
More information about the linux-arm-kernel
mailing list