Messages in this thread | | | From | Valentin Schneider <> | Subject | Re: [PATCH v2 3/5] powerpc: Use preemption model accessors | Date | Mon, 15 Nov 2021 15:29:53 +0000 |
| |
Doh, thought I had sent this one out already...
On 11/11/21 15:55, Michael Ellerman wrote: > Valentin Schneider <valentin.schneider@arm.com> writes: >> Per PREEMPT_DYNAMIC, checking CONFIG_PREEMPT doesn't tell you the actual >> preemption model of the live kernel. Use the newly-introduced accessors >> instead. >> >> sched_init() -> preempt_dynamic_init() happens way before IRQs are set up, >> so this should be fine. > > Despite the name interrupt_exit_kernel_prepare() is called before IRQs > are setup, traps and page faults are "interrupts" here. > > So I'm not sure about adding that call there, because it will trigger a > WARN if called early in boot, which will trigger a trap and depending on > the context we may not survive. > > I'd be happier if we can make it a build-time check. >
This can't be done at build-time for PREEMPT_DYNAMIC, but that can be punted off to whoever will implement ppc support for that :-) AFAICT if this can't use preempt_dynamic_mode (due to how "late" it is setup), the preempt_schedule_irq() needs to go and ppc needs to use irqentry_exit() / irqentry_exit_cond_resched().
I dropped that for v2.
> cheers >
| |