On Thu, Apr 24, 2014 at 08:45:58PM +0200, Denys Vlasenko wrote: > diff --git a/kernel/sched/core.c b/kernel/sched/core.c > index 268a45e..ffea757 100644 > --- a/kernel/sched/core.c > +++ b/kernel/sched/core.c > @@ -4218,7 +4218,14 @@ void __sched io_schedule(void) > current->in_iowait = 1; > schedule(); > current->in_iowait = 0; > +#ifdef CONFIG_NO_HZ_COMMON > + if (atomic_dec_and_test(&rq->nr_iowait)) { > + if (raw_smp_processor_id() != cpu_of(rq)) > + tick_nohz_iowait_to_idle(cpu_of(rq)); > + } > +#else > atomic_dec(&rq->nr_iowait); > +#endif > delayacct_blkio_end(); > }
You're really refusing to collapse that stuff eh? Maybe I should just redirect this entire iowait fest to /dev/null :/ > +void tick_nohz_iowait_to_idle(int cpu) > +{ > + struct tick_sched *ts = tick_get_tick_sched(cpu); > + ktime_t now = ktime_get(); > + > + write_seqcount_begin(&ts->idle_sleeptime_seq); > + ts->iowait_exittime = now; > + write_seqcount_end(&ts->idle_sleeptime_seq); > +} So what again was wrong with this one? http://marc.info/?l=linux-kernel&m=139772917211023 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/