Re: 50 Watt idle power regression bisected to Linux-3.10

From: Mike Galbraith
Date: Wed Dec 11 2013 - 08:11:55 EST


On Wed, 2013-12-11 at 13:43 +0100, Peter Zijlstra wrote:
> On Wed, Dec 11, 2013 at 01:29:15PM +0100, Mike Galbraith wrote:
> > On Wed, 2013-12-11 at 12:52 +0100, Peter Zijlstra wrote:
> > > On Wed, Dec 11, 2013 at 12:38:39PM +0100, Borislav Petkov wrote:
> > > > Right, if it turns out that this is really the case and that this
> > > > erratum hasn't been fixed for models later than 29 - we'd need the
> > > > additional model numbers to set X86_FEATURE_CLFLUSH_MONITOR correctly.
> > >
> > > You also need: https://lkml.org/lkml/2013/11/19/143
> > >
> > > Because obviously not all mwait idle loops check that cpu bit.
> >
> > I had tried that patch, to see if it would magically make the thing
> > start working, nope. I had also tried...
>
> > + if (this_cpu_has(X86_FEATURE_CLFLUSH_MONITOR))
> > + clflush((void *)&current_thread_info()->flags);
>
> Yeah, you need a bit extra to enable that feature bit for your CPU as
> bpetkov said.

Works for me, one more for the stable bucket.

So as soon as Len resurrects mwait_idle for Q6600 (and other core2 when
booted max_cstates=1 so tsc clocksource is used instead of pos hpet),
all the (known) idle regressions should be history.

-Mike

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/