Thread (150 messages) 150 messages, 3 authors, 1d ago

Re: [RFC PATCH 12/36] arm64: entry: replace DAIF helpers with entry helpers

From: Jinjie Ruan <hidden>
Date: 2026-07-22 09:39:25


On 7/15/2026 8:31 PM, Vladimir Murzin wrote:
On 7/10/26 10:36, Jinjie Ruan wrote:
quoted
quoted
 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
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help