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.
Fixes: 78869f0f0552 ("arm64: Extract parts of el2_setup into a macro") Signed-off-by: Vladimir Murzin vladimir.murzin@arm.com --- Changelog
v1 -> v2 - Drop the reference to 32bit guests from commit message (per Marc)
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
On Tue, 16 Mar 2021 13:43:19 +0000, Vladimir Murzin vladimir.murzin@arm.com wrote:
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.
Fixes: 78869f0f0552 ("arm64: Extract parts of el2_setup into a macro") Signed-off-by: Vladimir Murzin vladimir.murzin@arm.com
Reviewed-by: Marc Zyngier maz@kernel.org
Thanks,
M.
On Tue, Mar 16, 2021 at 01:43:19PM +0000, Vladimir Murzin wrote:
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.
Fixes: 78869f0f0552 ("arm64: Extract parts of el2_setup into a macro") Signed-off-by: Vladimir Murzin vladimir.murzin@arm.com
Changelog
v1 -> v2 - Drop the reference to 32bit guests from commit message (per Marc)
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(-)
Acked-by: Will Deacon will@kernel.org
It's a bit weird to have a patch in stable that isn't upstream, but I don't see a better option here.
Will
On Wed, Mar 17, 2021 at 01:26:15PM +0000, Will Deacon wrote:
On Tue, Mar 16, 2021 at 01:43:19PM +0000, Vladimir Murzin wrote:
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.
Fixes: 78869f0f0552 ("arm64: Extract parts of el2_setup into a macro") Signed-off-by: Vladimir Murzin vladimir.murzin@arm.com
Changelog
v1 -> v2 - Drop the reference to 32bit guests from commit message (per Marc)
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(-)
Acked-by: Will Deacon will@kernel.org
It's a bit weird to have a patch in stable that isn't upstream, but I don't see a better option here.
Yes, I'd agree here - the commits that would need to be backported look way too invasive.
I've queued it up, thanks.
On Thu, Mar 18, 2021 at 08:57:00AM -0400, Sasha Levin wrote:
On Wed, Mar 17, 2021 at 01:26:15PM +0000, Will Deacon wrote:
On Tue, Mar 16, 2021 at 01:43:19PM +0000, Vladimir Murzin wrote:
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.
Fixes: 78869f0f0552 ("arm64: Extract parts of el2_setup into a macro") Signed-off-by: Vladimir Murzin vladimir.murzin@arm.com
Changelog
v1 -> v2 - Drop the reference to 32bit guests from commit message (per Marc)
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(-)
Acked-by: Will Deacon will@kernel.org
It's a bit weird to have a patch in stable that isn't upstream, but I don't see a better option here.
Yes, I'd agree here - the commits that would need to be backported look way too invasive.
I've queued it up, thanks.
I don't see it, so I've added it as well...
thanks,
greg k-h
linux-stable-mirror@lists.linaro.org