Messages in this thread | | | From | Nikunj A Dadhania <> | Subject | Re: [RFC PATCH 0/4] Gang scheduling in CFS | Date | Mon, 20 Feb 2012 17:23:16 +0530 |
| |
On Mon, 20 Feb 2012 11:51:13 +0100, Peter Zijlstra <peterz@infradead.org> wrote: > On Mon, 2012-02-20 at 13:38 +0530, Nikunj A Dadhania wrote: > > +#ifdef CONFIG_PARAVIRT_FLUSH_TLB > > + while (!cpumask_empty(to_cpumask(f->flush_cpumask)) && --loop) > > + cpu_relax(); > > + if (!loop && !cpumask_empty(to_cpumask(f->flush_cpumask))) > > + halt(); > > > That's just vile, you don't need to wait for it, all you need to make > sure is that when that vcpu wakes up it does the flush. > Yes, but we are not sure the vcpu will be sleeping or running. In the case where vcpus are running, it might be beneficial to wait a while.
For example: If its a remote flush to only one of the vcpu and its already running, is it worthed to halt and come back?
Regards, Nikunj
| |