[RFC PATCH 12/36] arm64: entry: replace DAIF helpers with entry helpers
Jinjie Ruan
ruanjinjie at huawei.com
Wed Jul 22 02:39:00 PDT 2026
On 7/15/2026 8:31 PM, Vladimir Murzin wrote:
> On 7/10/26 10:36, Jinjie Ruan wrote:
>>> static void noinstr el1_undef(struct pt_regs *regs, unsigned long esr)
>>> {
>>> + arm64_exc_hwstate_t hwstate;
>>> irqentry_state_t state;
>>>
>>> state = arm64_enter_from_kernel_mode(regs);
>>> - local_daif_inherit(regs);
>>> + hwstate = arm64_inherit_exc_context(regs);
>> local_daif_inherit do not trace_hardirqs_off() but only
>> trace_hardirqs_off(),but now arm64_inherit_exc_context() do it, is this
>> a functional change?
>
> When CONFIG_TRACE_IRQFLAGS is not set, there is no change in
> behaviour. Otherwise, IIUC, we may continue to tell the kernel that
I was just curious whether trace_hardirqs_on() or trace_hardirqs_off()
is idempotent.
> hard IRQs are disabled, but that should be harmless.
>
> Could you please expand on your concern?
The following code seems to avoid repeated calls to trace_hardirqs_off().
So, I understand there should be no problem here.
22 >-------if (prev.flags == next.flags)
23 >------->-------return next;
>
> Thanks
> Vladimir
>
More information about the linux-arm-kernel
mailing list