[RFC PATCH v2 15/45] arm64: entry: replace DAIF helpers with entry helpers
Vladimir Murzin
vladimir.murzin at arm.com
Mon Aug 3 05:23:08 PDT 2026
On 7/28/26 10:53, Jinjie Ruan wrote:
>> @@ -526,21 +545,32 @@ static __always_inline void __el1_irq(struct pt_regs *regs,
>>
>> state = arm64_enter_from_kernel_mode(regs);
>>
>> + arm64_unmask_exc_context(NONMI_CONTEXT);
>> +
>> irq_enter_rcu();
>> do_interrupt_handler(regs, handler);
>> irq_exit_rcu();
>>
>> - arm64_exit_to_kernel_mode_preempt(regs, state);
>> + /*
>> + * If pseudo-NMIs are enabled and the interrupted context had
>> + * IRQs unmasked, the interrupt handler will have cleared DAIF
>> + * and switched to PMR masking in order to handle
>> + * NMIs. Otherwise it would keep IF. In both cases on return
>> + * we effectivly have NOIRQ_CONTEXT - keep track of it
>> + */
>> + arm64_debug_exc_context(NOIRQ_CONTEXT);
>> + arm64_exit_to_kernel_mode(regs, state, arm64_exc_hwstate_of_context(NOIRQ_CONTEXT));
>> }
> Is this a typo?
>
> arm64_exit_to_kernel_mode_preempt(regs,
> arm64_exc_hwstate_of_context(NOIRQ_CONTEXT));
>
Oops! Seems lost that while splitting the patch. Nice catch!
> otherwise LGTM
> Reviewed-by: Jinjie Ruan <ruanjinjie at huawei.com>
Thanks
Vladimir
More information about the linux-arm-kernel
mailing list