From: Jan Beulich Date: Fri, 11 Jun 2021 13:04:24 +0000 (+0200) Subject: Arm32: MSR to SPSR needs qualification X-Git-Tag: archive/raspbian/4.16.0+51-g0941d6cb-1+rpi1~2^2~42^2~447 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=93031fbe9f4c341a2e7950a088025ea550291433;p=xen.git Arm32: MSR to SPSR needs qualification The Arm ARM's description of MSR (ARM DDI 0406C.d section B9.3.12) doesn't even allow for plain "SPSR" here, and while gas accepts this, it takes it to mean SPSR_cf. Yet surely all of SPSR wants updating on this path, not just the lowest and highest 8 bits. Fixes: dfcffb128be4 ("xen/arm32: SPSR_hyp/SPSR") Signed-off-by: Jan Beulich Reviewed-by: Stefano Stabellini --- diff --git a/xen/arch/arm/arm32/entry.S b/xen/arch/arm/arm32/entry.S index 4e421109db..38826142ad 100644 --- a/xen/arch/arm/arm32/entry.S +++ b/xen/arch/arm/arm32/entry.S @@ -395,7 +395,7 @@ return_to_hypervisor: ldr r11, [sp, #UREGS_pc] msr ELR_hyp, r11 ldr r11, [sp, #UREGS_cpsr] - msr SPSR, r11 + msr SPSR_cxsf, r11 #ifdef CONFIG_ARM32_HARDEN_BRANCH_PREDICTOR /* * Hardening branch predictor may require to setup a different