On Thu, Jan 16, 2020 at 10:24 AM Will Deacon <will@xxxxxxxxxx> wrote: > > .macro irq_stack_entry > > mov x19, sp // preserve the original sp > > +#ifdef CONFIG_SHADOW_CALL_STACK > > + mov x20, x18 // preserve the original shadow stack > > +#endif > > Hmm, not sure about corrupting x20 here. Doesn't it hold the PMR value from > kernel_entry? You're right, and it's used in el1_irq after irq_handler if CONFIG_ARM64_PSEUDO_NMI is enabled. Thanks for pointing this out. Looks like one of x24-x29 should be safe here, and the comment needs to be updated to explain why x20-x23 shouldn't be corrupted. Sami