Re: [PATCH v2 5/5] target/arm: Add support for missing Jazelle system registers

2019-12-02 Thread Edgar E. Iglesias
On Sun, Dec 01, 2019 at 12:20:18PM +, Marc Zyngier wrote: > QEMU lacks the minimum Jazelle implementation that is required > by the architecture (everything is RAZ or RAZ/WI). Add it > together with the HCR_EL2.TID0 trapping that goes with it. Looks good to me: Reviewed-by: Edgar E.

Re: [PATCH v2 1/5] target/arm: Honor HCR_EL2.TID2 trapping requirements

2019-12-02 Thread Edgar E. Iglesias
he hierarchy. > > Do the right thing by trapping to EL2 if HCR_EL2.TID2 is set. Reviewed-by: Edgar E. Iglesias > > Signed-off-by: Marc Zyngier > --- > target/arm/helper.c | 31 +++ > 1 file changed, 27 insertions(+), 4 deletions(-) > > di

Re: [PATCH 3/3] target/arm: Handle trapping to EL2 of AArch32 VMRS instructions

2019-11-29 Thread Edgar E. Iglesias
On Fri, Nov 29, 2019 at 09:24:37AM +, Marc Zyngier wrote: > On 2019-11-29 08:28, Edgar E. Iglesias wrote: > > On Thu, Nov 28, 2019 at 04:17:18PM +, Marc Zyngier wrote: > > > HCR_EL2.TID3 requires that AArch32 reads of MVFR[012] are trapped to > > > EL2, and that

Re: [PATCH 3/3] target/arm: Handle trapping to EL2 of AArch32 VMRS instructions

2019-11-29 Thread Edgar E. Iglesias
PSCR: > diff --git a/target/arm/vfp_helper.c b/target/arm/vfp_helper.c > index 9710ef1c3e..44e538e51c 100644 > --- a/target/arm/vfp_helper.c > +++ b/target/arm/vfp_helper.c > @@ -1322,4 +1322,31 @@ float64 HELPER(frint64_d)(float64 f, void *fpst) > return frint_d(f, fpst, 64); &g

Re: [PATCH 2/3] target/arm: Honor HCR_EL2.TID1 trapping requirements

2019-11-29 Thread Edgar E. Iglesias
CPRegInfo *ri) > return ret; > } > > +static CPAccessResult access_aa64_tid1(CPUARMState *env, const ARMCPRegInfo > *ri, > + bool isread) > +{ > +if (arm_hcr_el2_eff(env) & HCR_TID1) { > +return CP_ACCESS_TRA

Re: [PATCH 1/3] target/arm: Honor HCR_EL2.TID2 trapping requirements

2019-11-28 Thread Edgar E. Iglesias
On Thu, Nov 28, 2019 at 04:17:16PM +, Marc Zyngier wrote: > HCR_EL2.TID2 mandates that access from EL1 to CTR_EL0, CCSIDR_EL1, > CCSIDR2_EL1, CLIDR_EL1, CSSELR_EL1 are trapped to EL2, and QEMU > completely ignores it, making impossible for hypervisors to Nit: "making it impossible" > virtual

Re: [PATCH] target/arm: Fix ISR_EL1 tracking when executing at EL2

2019-11-22 Thread Edgar E. Iglesias
f not running in a virtualized context. > > Fixes: 636540e9c40b > Reported-by: Quentin Perret > Signed-off-by: Marc Zyngier Looks good to me: Reviewed-by: Edgar E. Iglesias > --- > target/arm/helper.c | 7 +-- > 1 file changed, 5 insertions(+), 2 deletions(-) > &g