[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100205205312.GA4532@jgarrett.org>
Date: Fri, 5 Feb 2010 14:53:12 -0600
From: Jeff Garrett <jeff@...rrett.org>
To: Len Brown <lenb@...nel.org>
Cc: Andi Kleen <andi@...stfloor.org>, linux-kernel@...r.kernel.org,
linux-acpi@...r.kernel.org
Subject: Re: acpi_idle: Very idle Core i7 machine never enters C3
On Fri, Feb 05, 2010 at 12:45:21PM -0500, Len Brown wrote:
> Jeff,
> What do you see if you apply just the patch below?
>
> Also, in addition to "powertop -d" to show what the kernel requests,
> please run turbostat to show what the hardware actually did:
>
> http://userweb.kernel.org/~lenb/acpi/utils/pmtools-latest/turbostat/turbostat.c
>
> eg.
> # turbostat -d -v sleep 5
>
> thanks,
> -Len Brown, Intel Open Source Technology Center
With the patch, powertop reports good C3 residency and wakeups
remain very low. Seems to work. :)
I attached the powertop & turbostat output with this patch.
However, this confuses me. In a previous experiment in the
acpi_processor_setup_cpuidle() function, I replaced the pointer
to acpi_idle_enter_bm() with a pointer to
acpi_idle_enter_simple() even when bm_check is nonzero. With
that, I was able to get into C3, but the wakeups ballooned. But
the difference between what I did, and what you did, is the
difference between acpi_idle_enter_bm() with acpi_idle_bm_check()
returning zero and acpi_idle_enter_simple(). Those code paths
look almost identical. The bm path calls acpi_unlazy_tlb(), and
doesn't appear to call the ACPI_FLUSH_CPU_CACHE(), and they call
sched_clock_idle_sleep_event() in different places. I don't
understand why any of these differences would have had any
significant effect on wakeups.
I'm left wondering if it's a problem on my part. I should repeat
that previous experiment and see if there really is something
significantly different there.
BTW, getting a bit off topic, but since the two code paths are
almost identical, is there any reason not to unite them?
Something like the attached patch might work?
Thanks,
Jeff
View attachment "powertop.out" of type "text/plain" (1829 bytes)
View attachment "turbostat.out" of type "text/plain" (1089 bytes)
View attachment "patch" of type "text/plain" (4742 bytes)
Powered by blists - more mailing lists