> Subject: Re: str wzr, [x1, #16]! triggers EL2 unhandled data abort > > Hi Peng, > > Am 12.12.23 um 08:52 schrieb Peng Fan: > > Hi Alex, > > > >> Subject: Re: str wzr, [x1, #16]! triggers EL2 unhandled data abort > >> > >> Hi Peng, > >> > >> Am 12.12.23 um 03:42 schrieb Peng Fan: > >>> Hi All, > >>> > >>> > >>> I am running jailhouse on i.MX9 Cortex-A55, and meet an issue. > >>> " str wzr, [x1, #16]! " this instruction in EL0 triggers unhanlded > >>> Data abort in EL2, with ISS is data abort, ISV is 0. > >>> > >>> I am not sure why this instruction trigger DC with ISV 0. > >>> Any ideas are appreciated. > >>> > >>> Thanks, > >>> Peng. > >> > >> The Arm architecture cannot provide all information in ISS for > >> instructions that also update the base register. > > > > Does ARM architecture TRM note this? Would you please share me the > > Chapter? > > In my old version of the Arm ARM it's noted in Section D7.2.27 "ESR_ELx, > Exception Syndrome Register (ELx)" in the description of the ISV bit: > > Instruction syndrome valid ... > > This bit is 0 for all faults reported in ESR_EL2 except the following > > stage 2 > aborts: > > • AArch64 loads and stores ... and excluding those with writeback. > > > >> You need to change the code sequence to: > >> str wzr, [x1, #16] > >> add x1, x1, #16 > > > > Hmm, but gcc generates "str wzr, [x1, #16]!" from c code. > > > > This should be common issue I think. > > Yes, and I remember that there was some discussion on this on the LKML > years ago. The raw accessors in Linux like __raw_writel() enforce the simple > load/store forms to aid virtualization-
Thanks very much, I will try this. Thanks, Peng. > > Best regards > Alex > > > > > > Thanks, > > Peng. > > > >> > >> > >> Best regards > >> Alex -- You received this message because you are subscribed to the Google Groups "Jailhouse" group. To unsubscribe from this group and stop receiving emails from it, send an email to jailhouse-dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jailhouse-dev/DU0PR04MB9417FCA05F9B24C45D99EF15888DA%40DU0PR04MB9417.eurprd04.prod.outlook.com.