rpms/kernel/FC-4 linux-2.6-acpi-ht.patch, NONE, 1.1 kernel-2.6.spec, 1.1539, 1.1540

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Tue Dec 13 22:00:52 UTC 2005


Author: davej

Update of /cvs/dist/rpms/kernel/FC-4
In directory cvs.devel.redhat.com:/tmp/cvs-serv4032

Modified Files:
	kernel-2.6.spec 
Added Files:
	linux-2.6-acpi-ht.patch 
Log Message:
Fix up HT slowdown.


linux-2.6-acpi-ht.patch:
 drivers/acpi/processor_idle.c                |   19 +++++++++++++++++++
 linux-acpi-2.6/drivers/acpi/processor_idle.c |   21 +++++++++++++++------
 2 files changed, 34 insertions(+), 6 deletions(-)

--- NEW FILE linux-2.6-acpi-ht.patch ---
>From davej  Tue Dec 13 11:01:24 2005
Return-Path: <dsd at gentoo.org>
X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on 
	nwo.kernelslacker.org
X-Spam-Level: 
X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=failed 
	version=3.1.0
Received: from 172.16.58.1 [172.16.58.1]
	by nwo.kernelslacker.org with IMAP (fetchmail-6.3.0)
	for <davej at localhost> (single-drop); Tue, 13 Dec 2005 11:01:24 -0500 (EST)
Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
	by devserv.devel.redhat.com (8.12.11/8.12.11) with ESMTP id jBDG11Q5019087
	for <davej at devserv.devel.redhat.com>; Tue, 13 Dec 2005 11:01:01 -0500
Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
	by int-mx1.corp.redhat.com (8.11.6/8.11.6) with ESMTP id jBDG11107762
	for <davej at redhat.com>; Tue, 13 Dec 2005 11:01:01 -0500
Received: from mta07-winn.ispmail.ntl.com (mta07-winn.ispmail.ntl.com [81.103.221.47])
	by mx1.redhat.com (8.12.11/8.12.11) with ESMTP id jBDG0xiZ027891
	for <davej at redhat.com>; Tue, 13 Dec 2005 11:01:00 -0500
Received: from aamta09-winn.ispmail.ntl.com ([81.103.221.35])
          by mta07-winn.ispmail.ntl.com with ESMTP
          id <20051213160054.NBYX21883.mta07-winn.ispmail.ntl.com at aamta09-winn.ispmail.ntl.com>;
          Tue, 13 Dec 2005 16:00:54 +0000
Received: from [192.168.1.103] (really [82.17.179.110])
          by aamta09-winn.ispmail.ntl.com with ESMTP
          id <20051213160054.IMSF1233.aamta09-winn.ispmail.ntl.com@[192.168.1.103]>;
          Tue, 13 Dec 2005 16:00:54 +0000
Message-ID: <439EF02F.8020300 at gentoo.org>
Date: Tue, 13 Dec 2005 16:00:47 +0000
From: Daniel Drake <dsd at gentoo.org>
User-Agent: Mozilla Thunderbird 1.0.7 (X11/20051205)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Greg KH <gregkh at suse.de>
CC: linux-kernel at vger.kernel.org, stable at kernel.org,
        Justin Forbes <jmforbes at linuxtx.org>,
        Zwane Mwaikambo <zwane at arm.linux.org.uk>,
        "Theodore Ts'o" <tytso at mit.edu>, Randy Dunlap <rdunlap at xenotime.net>,
        Dave Jones <davej at redhat.com>, Chuck Wolber <chuckw at quantumlinux.com>,
        torvalds at osdl.org, akpm at osdl.org, alan at lxorguk.ukuu.org.uk,
        venkatesh.pallipadi at intel.com, len.brown at intel.com
Subject: Re: [patch 10/26] ACPI: Prefer _CST over FADT for C-state capabilities
References: <20051213073430.558435000 at press.kroah.org> <20051213082251.GK5823 at kroah.com>
In-Reply-To: <20051213082251.GK5823 at kroah.com>
Content-Type: multipart/mixed;
 boundary="------------090106040105090900010408"
X-RedHat-Spam-Score: 0.1 
Status: RO
Content-Length: 3426
Lines: 112

This is a multi-part message in MIME format.
--------------090106040105090900010408
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

Greg KH wrote:
> -stable review patch.  If anyone has any objections, please let us know.
> 
> ------------------
> From: Venkatesh Pallipadi <venkatesh.pallipadi at intel.com>
> 
> Note: This ACPI standard compliance may cause regression
> on some system, if they have _CST present, but _CST value
> is bogus. "nocst" module parameter should workaround
> that regression.
> 
> http://bugzilla.kernel.org/show_bug.cgi?id=5165
> 
> (cherry picked from 883baf7f7e81cca26f4683ae0d25ba48f094cc08 commit)
> 
> Signed-off-by: Venkatesh Pallipadi<venkatesh.pallipadi at intel.com>
> Signed-off-by: Len Brown <len.brown at intel.com>
> Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>
> ---
>  drivers/acpi/processor_idle.c |   10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)

Venkatesh followed up in a private email that a 3rd patch is needed to  solve 
the hyperthreading slowdown issue. This patch is not yet in Linus' tree (it is 
in acpi-test).

Maybe we should drop these patches (10 and 12) until the 3rd patch has been 
merged. I haven't been shipping the 3rd patch in Gentoo (yet) so I'm not able 
to gauge its effect...

Attaching the 3rd patch anyway.

Daniel

--------------090106040105090900010408
Content-Type: text/x-patch;
 name="p_LVL2_UP-flag-increment.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="p_LVL2_UP-flag-increment.patch"

From: Len Brown <len.brown at intel.com>

Bug fix for bugzilla #5165 http://bugzilla.kernel.org/show_bug.cgi?id=5165

Incremental changes to earlier patch.
* Changing the polarity of plvl2_up
* Skip promotion/demotion code when not needed.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi at intel.com>
Signed-off-by: Shaohua Li <shaohua.li at intel.com>

Index: linux-acpi-2.6/drivers/acpi/processor_idle.c
===================================================================
--- linux-acpi-2.6.orig/drivers/acpi/processor_idle.c
+++ linux-acpi-2.6/drivers/acpi/processor_idle.c
@@ -278,8 +278,6 @@ static void acpi_processor_idle(void)
 		}
 	}
 
-	cx->usage++;
-
 #ifdef CONFIG_HOTPLUG_CPU
 	/*
 	 * Check for P_LVL2_UP flag before entering C2 and above on
@@ -287,9 +285,12 @@ static void acpi_processor_idle(void)
 	 * detection phase, to work cleanly with logical CPU hotplug.
 	 */
 	if ((cx->type != ACPI_STATE_C1) && (num_online_cpus() > 1) && 
-	    !pr->flags.has_cst && acpi_fadt.plvl2_up)
-		cx->type = ACPI_STATE_C1;
+	    !pr->flags.has_cst && !acpi_fadt.plvl2_up)
+		cx = &pr->power.states[ACPI_STATE_C1];
 #endif
+
+	cx->usage++;
+
 	/*
 	 * Sleep:
 	 * ------
@@ -378,6 +379,15 @@ static void acpi_processor_idle(void)
 
 	next_state = pr->power.state;
 
+#ifdef CONFIG_HOTPLUG_CPU
+	/* Don't do promotion/demotion */
+	if ((cx->type == ACPI_STATE_C1) && (num_online_cpus() > 1) &&
+	    !pr->flags.has_cst && !acpi_fadt.plvl2_up) {
+		next_state = cx;
+		goto end;
+	}
+#endif
+
 	/*
 	 * Promotion?
 	 * ----------
@@ -549,7 +559,7 @@ static int acpi_processor_get_power_info
 	 * Check for P_LVL2_UP flag before entering C2 and above on
 	 * an SMP system. 
 	 */
-	if ((num_online_cpus() > 1) && acpi_fadt.plvl2_up)
+	if ((num_online_cpus() > 1) && !acpi_fadt.plvl2_up)
 		return_VALUE(-ENODEV);
 #endif
 

--------------090106040105090900010408--




More information about the fedora-cvs-commits mailing list