Messages in this thread | | | Date | Fri, 17 Jun 2022 15:31:23 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH] sched: Drop outdated compile-optimization comment |
| |
On Fri, Jun 17, 2022 at 12:10:05PM +0100, Valentin Schneider wrote: > On 15/06/22 15:27, Brian Norris wrote: > > Looks like this exists from way back in 2011 (commit 095c0aa83e52 > > ("sched: adjust scheduler cpu power for stolen time")), when there was a > > little more aggressive use of #if around these variables. That #if is > > gone, and the comment just confuses the reader now. (For one, we don't > > call sched_rt_avg_update() directly any more either.) > > > > So that sched_rt_avg_update() became update_irq_load_avg() with > > 91c27493e78d ("sched/irq: Add IRQ utilization tracking") > > and then the #ifdef configs were reorganized in > > 11d4afd4ff66 ("sched/pelt: Fix warning and clean up IRQ PELT config") > > I'd argue that comment is still somewhat relevant but it applies to that > block: > > #ifdef CONFIG_HAVE_SCHED_AVG_IRQ > if ((irq_delta + steal) && sched_feat(NONTASK_CAPACITY)) > update_irq_load_avg(rq, irq_delta + steal); > #endif > > if !CONFIG_HAVE_SCHED_AVG_IRQ then yes you'd expect the compiler to not > even add a call to update_irq_load_avg() in there, but compilers aren't the > most trustworthy things :-) If you feel like it, you could play with > GCC/clang and see what they emit if you remove those #ifdefs.
Mostly I think it was the jump_label stuff getting them confused. I suspect that's fixed in todays compilers tho, so yeah, it might be good to get rid of it.
| |