On Mon, Feb 19, 2018 at 05:21:17PM +0000, Julien Grall wrote: > Hi Christoffer, > > On 15/02/18 21:03, Christoffer Dall wrote: > >There's a semantic difference between the EL1 registers that control > >operation of a kernel running in EL1 and EL1 registers that only control > >userspace execution in EL0. Since we can defer saving/restoring the > >latter, move them into their own function. > > > >ACTLR_EL1 is not used by a VHE host, so we can move this register into > >the EL1 state which is not saved/restored for a VHE host. > > Looking at D10.2.1 (ARM DDI 0487C.a), the statement regarding the use of > ACTLR_EL1 seems to be less strong than what you state here. It looks like it > would be possible to have hardware where ACTLR_EL1 would still have an > effect on host EL0. I also read the comments on the version 2 of this patch > but I wasn't able to find what I missing. > As Marc points out, I'll add a reference to the spec that says that Arm recommends ACTLR_EL1 not having an effect on VHE host EL0. While potentially possible, it's unlikely, and we can fix that later if anyone builds a platform with VHE that we care about that uses ACTLR_EL1 for VHE host EL0. Thanks, -Christoffer