From 2f529f9b558ca1c1bd74be7437a84e4711743404 Mon Sep 17 00:00:00 2001 From: hc <hc@nodka.com> Date: Fri, 01 Nov 2024 02:11:33 +0000 Subject: [PATCH] add xenomai --- kernel/arch/x86/include/asm/irq_stack.h | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/kernel/arch/x86/include/asm/irq_stack.h b/kernel/arch/x86/include/asm/irq_stack.h index 7758169..58ad3c4 100644 --- a/kernel/arch/x86/include/asm/irq_stack.h +++ b/kernel/arch/x86/include/asm/irq_stack.h @@ -18,6 +18,13 @@ void asm_call_irq_on_stack(void *sp, void (*func)(struct irq_desc *desc), struct irq_desc *desc); +/* + * IRQ pipeline: only in-band (soft-)irq handlers have to run on the + * irqstack, oob irq handlers must be lean by design therefore can run + * directly over the preempted context. Therefore, the guarantee that + * the in-band stage is currently stalled on the current CPU is enough + * to update irq_count atomically. + */ static __always_inline void __run_on_irqstack(void (*func)(void)) { void *tos = __this_cpu_read(hardirq_stack_ptr); -- Gitblit v1.6.2