| Subject | Re: [PATCH v3 8/9] KVM-GST: adjust scheduler cpu power | From | Peter Zijlstra <> | Date | Thu, 30 Jun 2011 23:54:26 +0200 |
| |
On Wed, 2011-06-29 at 11:29 -0400, Glauber Costa wrote: > +#ifdef CONFIG_PARAVIRT_TIME_ACCOUNTING > + if (static_branch((¶virt_steal_rq_enabled))) { > + int is_idle; > + u64 st; > + > + is_idle = ((rq->curr != rq->idle) || > + irq_count() != HARDIRQ_OFFSET);
Now that hurt my brain. If the vcpu is idle, why does it want to run? How can an idle vcpu ever rack up steal time?
Also, what's that HARDIRQ_OFFSET bit about? sorely lacking in explanation, and the Changelog to this patch is about as bad as the last one.
> + __touch_steal_time(is_idle, delta, &st); > + > + steal = st * TICK_NSEC; > + > + delta -= steal; > + } > +#endif
|