From: Vladimir Murzin <vladimir.murzin@arm.com> To: linux-arm-kernel@lists.infradead.org, stable@vger.kernel.org Cc: catalin.marinas@arm.com, will@kernel.org, maz@kernel.org, dbrazdil@google.com Subject: [PATCH][for-stable-v5.11]] arm64: Unconditionally set virtual cpu id registers Date: Tue, 16 Mar 2021 11:25:00 +0000 [thread overview] Message-ID: <20210316112500.85268-1-vladimir.murzin@arm.com> (raw) Commit 78869f0f0552 ("arm64: Extract parts of el2_setup into a macro") reorganized el2 setup in such way that virtual cpu id registers set only in nVHE, yet they used (and need) to be set irrespective VHE support. Lack of setup causes 32-bit guest stop booting due to MIDR stay undefined. Fixes: 78869f0f0552 ("arm64: Extract parts of el2_setup into a macro") Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com> --- There is no upstream fix since issue went away due to code there has been reworked in 5.12: nVHE comes first, so virtual cpu id register are always set. Maintainers, please, Ack. arch/arm64/include/asm/el2_setup.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/include/asm/el2_setup.h b/arch/arm64/include/asm/el2_setup.h index f988e94cdf9e..db87daca6b8c 100644 --- a/arch/arm64/include/asm/el2_setup.h +++ b/arch/arm64/include/asm/el2_setup.h @@ -113,7 +113,7 @@ .endm /* Virtual CPU ID registers */ -.macro __init_el2_nvhe_idregs +.macro __init_el2_idregs mrs x0, midr_el1 mrs x1, mpidr_el1 msr vpidr_el2, x0 @@ -165,6 +165,7 @@ __init_el2_stage2 __init_el2_gicv3 __init_el2_hstr + __init_el2_idregs /* * When VHE is not in use, early init of EL2 needs to be done here. @@ -173,7 +174,6 @@ * will be done via the _EL1 system register aliases in __cpu_setup. */ .ifeqs "\mode", "nvhe" - __init_el2_nvhe_idregs __init_el2_nvhe_cptr __init_el2_nvhe_sve __init_el2_nvhe_prepare_eret -- 2.24.0
WARNING: multiple messages have this Message-ID (diff)
From: Vladimir Murzin <vladimir.murzin@arm.com> To: linux-arm-kernel@lists.infradead.org, stable@vger.kernel.org Cc: catalin.marinas@arm.com, will@kernel.org, maz@kernel.org, dbrazdil@google.com Subject: [PATCH][for-stable-v5.11]] arm64: Unconditionally set virtual cpu id registers Date: Tue, 16 Mar 2021 11:25:00 +0000 [thread overview] Message-ID: <20210316112500.85268-1-vladimir.murzin@arm.com> (raw) Commit 78869f0f0552 ("arm64: Extract parts of el2_setup into a macro") reorganized el2 setup in such way that virtual cpu id registers set only in nVHE, yet they used (and need) to be set irrespective VHE support. Lack of setup causes 32-bit guest stop booting due to MIDR stay undefined. Fixes: 78869f0f0552 ("arm64: Extract parts of el2_setup into a macro") Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com> --- There is no upstream fix since issue went away due to code there has been reworked in 5.12: nVHE comes first, so virtual cpu id register are always set. Maintainers, please, Ack. arch/arm64/include/asm/el2_setup.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/include/asm/el2_setup.h b/arch/arm64/include/asm/el2_setup.h index f988e94cdf9e..db87daca6b8c 100644 --- a/arch/arm64/include/asm/el2_setup.h +++ b/arch/arm64/include/asm/el2_setup.h @@ -113,7 +113,7 @@ .endm /* Virtual CPU ID registers */ -.macro __init_el2_nvhe_idregs +.macro __init_el2_idregs mrs x0, midr_el1 mrs x1, mpidr_el1 msr vpidr_el2, x0 @@ -165,6 +165,7 @@ __init_el2_stage2 __init_el2_gicv3 __init_el2_hstr + __init_el2_idregs /* * When VHE is not in use, early init of EL2 needs to be done here. @@ -173,7 +174,6 @@ * will be done via the _EL1 system register aliases in __cpu_setup. */ .ifeqs "\mode", "nvhe" - __init_el2_nvhe_idregs __init_el2_nvhe_cptr __init_el2_nvhe_sve __init_el2_nvhe_prepare_eret -- 2.24.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next reply other threads:[~2021-03-16 11:26 UTC|newest] Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-03-16 11:25 Vladimir Murzin [this message] 2021-03-16 11:25 ` [PATCH][for-stable-v5.11]] arm64: Unconditionally set virtual cpu id registers Vladimir Murzin 2021-03-16 11:31 ` Greg KH 2021-03-16 11:31 ` Greg KH 2021-03-16 11:41 ` Vladimir Murzin 2021-03-16 11:41 ` Vladimir Murzin 2021-03-16 11:41 ` Marc Zyngier 2021-03-16 11:41 ` Marc Zyngier 2021-03-16 13:22 ` Marc Zyngier 2021-03-16 13:22 ` Marc Zyngier 2021-03-16 13:37 ` Vladimir Murzin 2021-03-16 13:37 ` Vladimir Murzin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210316112500.85268-1-vladimir.murzin@arm.com \ --to=vladimir.murzin@arm.com \ --cc=catalin.marinas@arm.com \ --cc=dbrazdil@google.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=maz@kernel.org \ --cc=stable@vger.kernel.org \ --cc=will@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.