Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757621AbYC1W4T (ORCPT ); Fri, 28 Mar 2008 18:56:19 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754363AbYC1W4I (ORCPT ); Fri, 28 Mar 2008 18:56:08 -0400 Received: from mga02.intel.com ([134.134.136.20]:25558 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753052AbYC1W4H (ORCPT ); Fri, 28 Mar 2008 18:56:07 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.25,572,1199692800"; d="scan'208";a="265671657" Date: Fri, 28 Mar 2008 15:56:04 -0700 From: Venki Pallipadi To: David Brownell Cc: "Pallipadi, Venkatesh" , Andrew Morton , linux-kernel@vger.kernel.org, "Rafael J. Wysocki" , linux-acpi@vger.kernel.org, Len Brown Subject: Re: 2.6.25 regression: powertop says 120K wakeups/sec Message-ID: <20080328225604.GA7136@linux-os.sc.intel.com> References: <20080322202454.9D69DCC0EF@adsl-69-226-248-13.dsl.pltn13.pacbell.net> <200803281409.09622.david-b@pacbell.net> <924EFEDD5F540B4284297C4DC59F3DEEC83E08@orsmsx423.amr.corp.intel.com> <200803281509.23107.david-b@pacbell.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200803281509.23107.david-b@pacbell.net> User-Agent: Mutt/1.4.1i Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2106 Lines: 64 On Fri, Mar 28, 2008 at 03:09:22PM -0700, David Brownell wrote: > On Friday 28 March 2008, Pallipadi, Venkatesh wrote: > > You should have a dmesg line which looks like > > ACPI: CPU0 (power states: C1[C1] C2[C2] > > Do you see C2 in such line? > > Yes: > > ACPI: CPU0 (power states: C1[C1] C2[C2]) David, I think I figured out the bug... Can you try the below patch and confirm that it works (over upstream - ignore the earlier revert patch I sent to you). Thanks, Venki ---- Patch to fix huge number of wakeups reported due to recent changes in processor_idle.c. The problem was that the entry_method determination was broken due to one of the recent commits (bc71bec91f987) causing C1 entry to not to go to halt. This should also fix the hang reported here. http://bugzilla.kernel.org/show_bug.cgi?id=10093 Signed-off-by: Venkatesh Pallipadi --- drivers/acpi/processor_idle.c | 4 ++++ 1 file changed, 4 insertions(+) Index: linux-2.6/drivers/acpi/processor_idle.c =================================================================== --- linux-2.6.orig/drivers/acpi/processor_idle.c 2008-03-28 15:31:13.000000000 -0700 +++ linux-2.6/drivers/acpi/processor_idle.c 2008-03-28 15:40:50.000000000 -0700 @@ -848,6 +848,7 @@ static int acpi_processor_get_power_info /* all processors need to support C1 */ pr->power.states[ACPI_STATE_C1].type = ACPI_STATE_C1; pr->power.states[ACPI_STATE_C1].valid = 1; + pr->power.states[ACPI_STATE_C1].entry_method = ACPI_CSTATE_HALT; } /* the C0 state only exists as a filler in our array */ pr->power.states[ACPI_STATE_C0].valid = 1; @@ -960,6 +961,9 @@ static int acpi_processor_get_power_info cx.address); } + if (cx.type == ACPI_STATE_C1) { + cx.valid = 1; + } obj = &(element->package.elements[2]); if (obj->type != ACPI_TYPE_INTEGER) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/