On Fri, 2011-07-01 at 17:22 -0400, Glauber Costa wrote: > This patch makes update_rq_clock() aware of steal time. > The mechanism of operation is not different from irq_time, > and follows the same principles. This lives in a CONFIG > option itself, and can be compiled out independently of > the rest of steal time reporting. The effect of disabling it > is that the scheduler will still report steal time (that cannot be > disabled), but won't use this information for cpu power adjustments. > > Everytime update_rq_clock_task() is invoked, we query information > about how much time was stolen since last call, and feed it into > sched_rt_avg_update(). > > Although steal time reporting in account_process_tick() keeps > track of the last time we read the steal clock, in prev_steal_time, > this patch do it independently using another field, > prev_steal_time_rq. This is because otherwise, information about time > accounted in update_process_tick() would never reach us in update_rq_clock(). > > Signed-off-by: Glauber Costa <glommer@xxxxxxxxxx> > CC: Rik van Riel <riel@xxxxxxxxxx> > CC: Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx> > CC: Peter Zijlstra <peterz@xxxxxxxxxxxxx> > CC: Avi Kivity <avi@xxxxxxxxxx> > CC: Anthony Liguori <aliguori@xxxxxxxxxx> > CC: Eric B Munson <emunson@xxxxxxxxx> Acked-by: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> Cleaning up that CPP mess when the GCC people come back saying their compiler will properly do that optimization can always be done in a follow up patch. Thanks! -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html