rpms/kernel/devel git-cpufreq.patch, 1.4, 1.5 kernel.spec, 1.1552, 1.1553

Dave Jones davej at fedoraproject.org
Tue May 26 16:25:45 UTC 2009


Author: davej

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv32282

Modified Files:
	git-cpufreq.patch kernel.spec 
Log Message:
Various cpufreq patches from git.

git-cpufreq.patch:

Index: git-cpufreq.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/git-cpufreq.patch,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -p -r1.4 -r1.5
--- git-cpufreq.patch	12 Nov 2008 16:28:22 -0000	1.4
+++ git-cpufreq.patch	26 May 2009 16:25:44 -0000	1.5
@@ -0,0 +1,1975 @@
+From davej at redhat.com  Sun Mar  8 03:17:38 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n283HacW031963
+	for <davej at kernel.org>; Sun, 8 Mar 2009 03:17:37 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n283HaYu003117
+	for <davej at kernel.org>; Sat, 7 Mar 2009 22:17:36 -0500
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n283Hao7001463
+	for <davej at kernel.org>; Sat, 7 Mar 2009 22:17:36 -0500
+Received: from gelk.kernelslacker.org (vpn-12-228.rdu.redhat.com [10.11.12.228])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n283HZeC019656
+	for <davej at kernel.org>; Sat, 7 Mar 2009 22:17:36 -0500
+Received: from gelk.kernelslacker.org (localhost.localdomain [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n283HYpx001945
+	for <davej at kernel.org>; Sat, 7 Mar 2009 22:17:34 -0500
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n283HY7f001929
+	for davej at kernel.org; Sat, 7 Mar 2009 22:17:34 -0500
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Sat, 7 Mar 2009 22:17:34 -0500
+Resent-Message-ID: <20090308031734.GA2988 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,UNPARSEABLE_RELAY
+	autolearn=ham version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.51]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.8)
+	for <davej at localhost> (single-drop); Sat, 07 Mar 2009 22:08:11 -0500 (EST)
+Received: from zmta03.collab.prod.int.phx2.redhat.com (LHLO
+ zmta03.collab.prod.int.phx2.redhat.com) (10.5.5.33) by
+ mail04.corp.redhat.com with LMTP; Fri, 6 Mar 2009 15:26:31 -0500 (EST)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id A44EB4E002;
+	Fri,  6 Mar 2009 15:26:31 -0500 (EST)
+Received: from zmta03.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta03.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id pmqSi5gUjqSO; Fri,  6 Mar 2009 15:26:31 -0500 (EST)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 5789A4DFFE;
+	Fri,  6 Mar 2009 15:26:31 -0500 (EST)
+Received: from mx2.util.phx.redhat.com (mx2.util.phx.redhat.com [10.8.4.102])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n26KQWXi005292;
+	Fri, 6 Mar 2009 15:26:32 -0500
+Received: from bastion.fedora.phx.redhat.com (bastion.fedora.phx.redhat.com [10.8.34.50])
+	by mx2.util.phx.redhat.com (8.13.1/8.13.1) with ESMTP id n26KP31b015758;
+	Fri, 6 Mar 2009 15:25:03 -0500
+Received: by bastion.fedora.phx.redhat.com (Postfix)
+	id B03F2208544; Fri,  6 Mar 2009 20:25:52 +0000 (UTC)
+Delivered-To: kernel-owner at fedoraproject.org
+Received: by bastion.fedora.phx.redhat.com (Postfix, from userid 404)
+	id AC1B3208543; Fri,  6 Mar 2009 20:25:52 +0000 (UTC)
+Received: from cvs1.fedora.phx.redhat.com (cvs1.fedora.phx.redhat.com [10.8.34.217])
+	by bastion.fedora.phx.redhat.com (Postfix) with ESMTP id 139D02082B2;
+	Fri,  6 Mar 2009 20:25:46 +0000 (UTC)
+Received: from cvs1.fedora.phx.redhat.com (localhost.localdomain [127.0.0.1])
+	by cvs1.fedora.phx.redhat.com (Postfix) with ESMTP id 5B9BF70116;
+	Fri,  6 Mar 2009 20:24:57 +0000 (UTC)
+Subject: [CPUFREQ] add atom family to p4-clockmod
+X-CVSROOT: /cvs/pkgs
+From: Jarod Wilson <jwilson at fedoraproject.org>
+To: cvsextras at fedoraproject.org, kernel-owner at fedoraproject.org
+X-CVS-Module: rpms
+X-CVS-Directory: rpms/kernel/devel
+X-CVS-User: jwilson
+X-CVS-Server: cvs1.fedora.phx.redhat.com
+Precedence: first-class
+Message-Id: <20090306202457.5B9BF70116 at cvs1.fedora.phx.redhat.com>
+Date: Fri,  6 Mar 2009 20:24:57 +0000 (UTC)
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Virus-Scanned: ClamAV 0.93.3/9080/Fri Mar  6 19:13:38 2009 on hera.kernel.org
+X-Virus-Status: Clean
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Sun, 08 Mar 2009 03:17:38 +0000 (UTC)
+Status: RO
+Content-Length: 2639
+Lines: 83
+
+Some atom procs don't do freq scaling (such as the atom 330 on my own
+littlefalls2 board). By adding the atom family here, we at least get
+the benefit of passive cooling in a thermal emergency. Not sure how
+to see that its actually helping any, but the driver does bind and
+claim its functioning on my atom 330.
+
+Signed-off-by: Jarod Wilson <jarod at redhat.com>
+Signed-off-by: Dave Jones <davej at redhat.com>
+
+---
+ arch/x86/kernel/cpu/cpufreq/p4-clockmod.c |    1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/arch/x86/kernel/cpu/cpufreq/p4-clockmod.c b/arch/x86/kernel/cpu/cpufreq/p4-clockmod.c
+index 6ac55bd..8696151 100644
+--- a/arch/x86/kernel/cpu/cpufreq/p4-clockmod.c
++++ b/arch/x86/kernel/cpu/cpufreq/p4-clockmod.c
+@@ -168,6 +168,7 @@ static unsigned int cpufreq_p4_get_frequency(struct cpuinfo_x86 *c)
+ 		case 0x0E: /* Core */
+ 		case 0x0F: /* Core Duo */
+ 		case 0x16: /* Celeron Core */
++		case 0x1C: /* Atom */
+ 			p4clockmod_driver.flags |= CPUFREQ_CONST_LOOPS;
+ 			return speedstep_get_frequency(SPEEDSTEP_CPU_PCORE);
+ 		case 0x0D: /* Pentium M (Dothan) */
+
+
+From 695817659757f837cc9ae92d592704144139af0d Mon Sep 17 00:00:00 2001
+From: Dave Jones <davej at redhat.com>
+Date: Thu, 23 Apr 2009 13:36:12 -0400
+Subject: [CPUFREQ] powernow-k7 build fix when ACPI=n
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: 8bit
+Status: RO
+Content-Length: 819
+Lines: 27
+
+arch/x86/kernel/cpu/cpufreq/powernow-k7.c:172: warning: 'invalidate_entry' defined but not used
+
+Reported-by: Toralf Förster <toralf.foerster at gmx.de>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ arch/x86/kernel/cpu/cpufreq/powernow-k7.c |    2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/arch/x86/kernel/cpu/cpufreq/powernow-k7.c b/arch/x86/kernel/cpu/cpufreq/powernow-k7.c
+index 3c28ccd..a8363e5 100644
+--- a/arch/x86/kernel/cpu/cpufreq/powernow-k7.c
++++ b/arch/x86/kernel/cpu/cpufreq/powernow-k7.c
+@@ -168,10 +168,12 @@ static int check_powernow(void)
+ 	return 1;
+ }
+ 
++#ifdef CONFIG_X86_POWERNOW_K7_ACPI
+ static void invalidate_entry(unsigned int entry)
+ {
+ 	powernow_table[entry].frequency = CPUFREQ_ENTRY_INVALID;
+ }
++#endif
+ 
+ static int get_ranges(unsigned char *pst)
+ {
+-- 
+1.6.1.1
+
+From davej at redhat.com  Sun May 17 15:49:29 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n4HFmV0F009894
+	for <davej at kernel.org>; Sun, 17 May 2009 15:49:24 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n4HFmR2d015126
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:27 -0400
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n4HFmNfh023056
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:23 -0400
+Received: from gelk.kernelslacker.org (vpn-10-52.bos.redhat.com [10.16.10.52])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n4HFmMlm017656
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:22 -0400
+Received: from gelk.kernelslacker.org (gelk.kernelslacker.org [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n4HFmHAd015516
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:17 -0400
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n4HFmHZc015480
+	for davej at kernel.org; Sun, 17 May 2009 11:48:17 -0400
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Sun, 17 May 2009 11:48:17 -0400
+Resent-Message-ID: <20090517154817.GA2602 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00,
+	UNPARSEABLE_RELAY autolearn=ham version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.52]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.9)
+	for <davej at localhost> (single-drop); Sun, 17 May 2009 11:47:34 -0400 (EDT)
+Received: from zmta02.collab.prod.int.phx2.redhat.com (LHLO
+ zmta02.collab.prod.int.phx2.redhat.com) (10.5.5.32) by
+ mail04.corp.redhat.com with LMTP; Sun, 17 May 2009 10:24:16 -0400 (EDT)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta02.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 9F9009C1A7
+	for <davej at redhat.com>; Sun, 17 May 2009 10:24:16 -0400 (EDT)
+Received: from zmta02.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta02.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id SapwHUbDR-0g for <davej at redhat.com>;
+	Sun, 17 May 2009 10:24:16 -0400 (EDT)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta02.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 5316C9C1A0
+	for <davej at mail.corp.redhat.com>; Sun, 17 May 2009 10:24:16 -0400 (EDT)
+Received: from mx3.redhat.com (mx3.redhat.com [172.16.48.32])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n4HEOCVQ010712
+	for <davej at redhat.com>; Sun, 17 May 2009 10:24:12 -0400
+Received: from tomts10-srv.bellnexxia.net (tomts10.bellnexxia.net [209.226.175.54])
+	by mx3.redhat.com (8.13.8/8.13.8) with ESMTP id n4HENr7q027791
+	for <davej at redhat.com>; Sun, 17 May 2009 10:23:55 -0400
+Received: from toip5.srvr.bell.ca ([209.226.175.88])
+          by tomts10-srv.bellnexxia.net
+          (InterMail vM.5.01.06.13 201-253-122-130-113-20050324) with ESMTP
+          id <20090517142353.LBUG1703.tomts10-srv.bellnexxia.net at toip5.srvr.bell.ca>
+          for <davej at redhat.com>; Sun, 17 May 2009 10:23:53 -0400
+X-IronPort-Anti-Spam-Filtered: true
+X-IronPort-Anti-Spam-Result: Ao8IAMe0D0pMQW1W/2dsb2JhbACBT4EwzTGCOAqBPwWIRw
+Received: from bas5-montreal19-1279356246.dsl.bell.ca (HELO krystal.dyndns.org) ([76.65.109.86])
+  by toip5.srvr.bell.ca with ESMTP; 17 May 2009 10:30:33 -0400
+Received: from localhost (localhost [127.0.0.1])
+  (uid 1000)
+  by krystal.dyndns.org with local; Sun, 17 May 2009 10:23:52 -0400
+  id 00013F0E.4A101DF8.00006E9F
+Date: Sun, 17 May 2009 10:23:52 -0400
+From: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+To: "Rafael J. Wysocki" <rjw at sisk.pl>
+Cc: Linux Kernel Mailing List <linux-kernel at vger.kernel.org>,
+        Kernel Testers List <kernel-testers at vger.kernel.org>,
+        Andrew Morton <akpm at linux-foundation.org>,
+        Chris Wright <chrisw at sous-sol.org>, Dave Jones <davej at redhat.com>,
+        Ben Slusky <sluskyb at paranoiacs.org>, Ingo Molnar <mingo at elte.hu>,
+        Greg KH <greg at kroah.com>,
+        KOSAKI Motohiro <kosaki.motohiro at jp.fujitsu.com>
+Subject: [CPUFREQ] remove rwsem lock from CPUFREQ_GOV_STOP call
+Message-ID: <20090517142352.GA27882 at Krystal>
+References: <yO1BmxN79sN.A.xAG.8_zDKB at chimera> <pQ9WADCjgyE.A.PTG.HA0DKB at chimera>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Content-Transfer-Encoding: 7bit
+Content-Disposition: inline
+In-Reply-To: <pQ9WADCjgyE.A.PTG.HA0DKB at chimera>
+X-Editor: vi
+X-Info: http://krystal.dyndns.org:8080
+X-Operating-System: Linux/2.6.21.3-grsec (i686)
+X-Uptime: 10:21:13 up 78 days, 10:47,  3 users,  load average: 0.11, 0.35,
+	0.32
+User-Agent: Mutt/1.5.18 (2008-05-17)
+X-RedHat-Spam-Score: -1.561 
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Scanned-By: MIMEDefang 2.63 on 172.16.48.32
+X-Virus-Scanned: ClamAV 0.93.3/9365/Sat May 16 12:41:29 2009 on hera.kernel.org
+X-Virus-Status: Clean
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Sun, 17 May 2009 15:49:29 +0000 (UTC)
+Status: RO
+Content-Length: 3766
+Lines: 103
+
+* Rafael J. Wysocki (rjw at sisk.pl) wrote:
+> This message has been generated automatically as a part of a report
+> of regressions introduced between 2.6.28 and 2.6.29.
+> 
+> The following bug entry is on the current list of known regressions
+> introduced between 2.6.28 and 2.6.29.  Please verify if it still should
+> be listed and let me know (either way).
+> 
+> 
+> Bug-Entry	: http://bugzilla.kernel.org/show_bug.cgi?id=13186
+> Subject		: cpufreq timer teardown problem
+> Submitter	: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+> Date		: 2009-04-23 14:00 (24 days old)
+> References	: http://marc.info/?l=linux-kernel&m=124049523515036&w=4
+> Handled-By	: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+> Patch		: http://patchwork.kernel.org/patch/19754/
+> 		  http://patchwork.kernel.org/patch/19753/
+
+The patches linked above depend on the following patch to remove
+circular locking dependency :
+
+
+cpufreq: remove rwsem lock from CPUFREQ_GOV_STOP call
+
+(the following issue was faced when using cancel_delayed_work_sync() in the
+timer teardown (which fixes a race).
+
+* KOSAKI Motohiro (kosaki.motohiro at jp.fujitsu.com) wrote:
+> Hi
+> 
+> my box output following warnings.
+> it seems regression by commit 7ccc7608b836e58fbacf65ee4f8eefa288e86fac.
+> 
+> A: work -> do_dbs_timer()  -> cpu_policy_rwsem
+> B: store() -> cpu_policy_rwsem -> cpufreq_governor_dbs() -> work
+> 
+> 
+
+Hrm, I think it must be due to my attempt to fix the timer teardown race
+in ondemand governor mixed with new locking behavior in 2.6.30-rc.
+
+The rwlock seems to be taken around the whole call to
+cpufreq_governor_dbs(), when it should be only taken around accesses to
+the locked data, and especially *not* around the call to
+dbs_timer_exit().
+
+Reverting my fix attempt would put the teardown race back in place
+(replacing the cancel_delayed_work_sync by cancel_delayed_work).
+Instead, a proper fix would imply modifying this critical section :
+
+cpufreq.c: __cpufreq_remove_dev()
+...
+        if (cpufreq_driver->target)
+                __cpufreq_governor(data, CPUFREQ_GOV_STOP);
+
+        unlock_policy_rwsem_write(cpu);
+
+To make sure the __cpufreq_governor() callback is not called with rwsem
+held. This would allow execution of cancel_delayed_work_sync() without
+being nested within the rwsem.
+
+Applies on top of the 2.6.30-rc5 tree.
+
+Required to remove circular dep in teardown of both conservative and
+ondemande governors so they can use cancel_delayed_work_sync().
+CPUFREQ_GOV_STOP does not modify the policy, therefore this locking seemed
+unneeded.
+
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+CC: KOSAKI Motohiro <kosaki.motohiro at jp.fujitsu.com>
+Cc: Greg KH <greg at kroah.com>
+CC: Ingo Molnar <mingo at elte.hu>
+CC: "Rafael J. Wysocki" <rjw at sisk.pl>
+CC: Ben Slusky <sluskyb at paranoiacs.org>
+CC: Chris Wright <chrisw at sous-sol.org>
+CC: Andrew Morton <akpm at linux-foundation.org>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ drivers/cpufreq/cpufreq.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: linux-2.6-lttng/drivers/cpufreq/cpufreq.c
+===================================================================
+--- linux-2.6-lttng.orig/drivers/cpufreq/cpufreq.c	2009-05-10 14:41:53.000000000 -0400
++++ linux-2.6-lttng/drivers/cpufreq/cpufreq.c	2009-05-10 14:42:29.000000000 -0400
+@@ -1070,11 +1070,11 @@ static int __cpufreq_remove_dev(struct s
+ 	spin_unlock_irqrestore(&cpufreq_driver_lock, flags);
+ #endif
+ 
++	unlock_policy_rwsem_write(cpu);
++
+ 	if (cpufreq_driver->target)
+ 		__cpufreq_governor(data, CPUFREQ_GOV_STOP);
+ 
+-	unlock_policy_rwsem_write(cpu);
+-
+ 	kobject_put(&data->kobj);
+ 
+ 	/* we need to make sure that the underlying kobj is actually
+
+-- 
+Mathieu Desnoyers
+OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68
+
+From davej at redhat.com  Sun May 17 15:49:29 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n4HFmV20009895
+	for <davej at kernel.org>; Sun, 17 May 2009 15:49:24 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n4HFmVQA015138
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:31 -0400
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n4HFmUT5023063
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:31 -0400
+Received: from gelk.kernelslacker.org (vpn-10-52.bos.redhat.com [10.16.10.52])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n4HFmUmS017665
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:30 -0400
+Received: from gelk.kernelslacker.org (gelk.kernelslacker.org [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n4HFmTh6015940
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:29 -0400
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n4HFmTfc015939
+	for davej at kernel.org; Sun, 17 May 2009 11:48:29 -0400
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Sun, 17 May 2009 11:48:29 -0400
+Resent-Message-ID: <20090517154829.GB2602 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00,
+	UNPARSEABLE_RELAY autolearn=unavailable version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.52]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.9)
+	for <davej at localhost> (single-drop); Sun, 17 May 2009 11:47:38 -0400 (EDT)
+Received: from zmta02.collab.prod.int.phx2.redhat.com (LHLO
+ zmta02.collab.prod.int.phx2.redhat.com) (10.5.5.32) by
+ mail04.corp.redhat.com with LMTP; Sun, 17 May 2009 10:30:28 -0400 (EDT)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta02.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 6B5339C1A7
+	for <davej at redhat.com>; Sun, 17 May 2009 10:30:28 -0400 (EDT)
+Received: from zmta02.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta02.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id RALBZwljUCSW for <davej at redhat.com>;
+	Sun, 17 May 2009 10:30:28 -0400 (EDT)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta02.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 2795A9C1A0
+	for <davej at mail.corp.redhat.com>; Sun, 17 May 2009 10:30:28 -0400 (EDT)
+Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n4HEUQQn013085
+	for <davej at redhat.com>; Sun, 17 May 2009 10:30:26 -0400
+Received: from tomts40-srv.bellnexxia.net (tomts40.bellnexxia.net [209.226.175.97])
+	by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n4HETZsu005452
+	for <davej at redhat.com>; Sun, 17 May 2009 10:29:51 -0400
+Received: from toip7.srvr.bell.ca ([209.226.175.124])
+          by tomts40-srv.bellnexxia.net
+          (InterMail vM.5.01.06.13 201-253-122-130-113-20050324) with ESMTP
+          id <20090517142935.IPCF12511.tomts40-srv.bellnexxia.net at toip7.srvr.bell.ca>
+          for <davej at redhat.com>; Sun, 17 May 2009 10:29:35 -0400
+X-IronPort-Anti-Spam-Filtered: true
+X-IronPort-Anti-Spam-Result: Ao8IANG7D0pMQW1W/2dsb2JhbACBT4EwzSqCQoE/BQ
+Received: from bas5-montreal19-1279356246.dsl.bell.ca (HELO krystal.dyndns.org) ([76.65.109.86])
+  by toip7.srvr.bell.ca with ESMTP; 17 May 2009 10:31:17 -0400
+Received: from localhost (localhost [127.0.0.1])
+  (uid 1000)
+  by krystal.dyndns.org with local; Sun, 17 May 2009 10:29:33 -0400
+  id 00013F0E.4A101F4D.00006F51
+Date: Sun, 17 May 2009 10:29:33 -0400
+From: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+To: "Rafael J. Wysocki" <rjw at sisk.pl>
+Cc: Linux Kernel Mailing List <linux-kernel at vger.kernel.org>,
+        Kernel Testers List <kernel-testers at vger.kernel.org>,
+        Andrew Morton <akpm at linux-foundation.org>, gregkh at suse.de,
+        stable at kernel.org, cpufreq at vger.kernel.org,
+        Ingo Molnar <mingo at elte.hu>, rjw at sisk.pl,
+        Ben Slusky <sluskyb at paranoiacs.org>, Dave Jones <davej at redhat.com>
+Subject: [CPUFREQ] fix timer teardown in conservative governor
+Message-ID: <20090517142933.GB27882 at Krystal>
+References: <yO1BmxN79sN.A.xAG.8_zDKB at chimera> <pQ9WADCjgyE.A.PTG.HA0DKB at chimera>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Content-Transfer-Encoding: 7bit
+Content-Disposition: inline
+In-Reply-To: <pQ9WADCjgyE.A.PTG.HA0DKB at chimera>
+X-Editor: vi
+X-Info: http://krystal.dyndns.org:8080
+X-Operating-System: Linux/2.6.21.3-grsec (i686)
+X-Uptime: 10:25:56 up 78 days, 10:52,  3 users,  load average: 0.16, 0.25,
+	0.28
+User-Agent: Mutt/1.5.18 (2008-05-17)
+X-RedHat-Spam-Score: -1.499 
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Scanned-By: MIMEDefang 2.63 on 172.16.48.31
+X-Virus-Scanned: ClamAV 0.93.3/9365/Sat May 16 12:41:29 2009 on hera.kernel.org
+X-Virus-Status: Clean
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Sun, 17 May 2009 15:49:29 +0000 (UTC)
+Status: RO
+Content-Length: 3536
+Lines: 84
+
+* Rafael J. Wysocki (rjw at sisk.pl) wrote:
+> This message has been generated automatically as a part of a report
+> of regressions introduced between 2.6.28 and 2.6.29.
+> 
+> The following bug entry is on the current list of known regressions
+> introduced between 2.6.28 and 2.6.29.  Please verify if it still should
+> be listed and let me know (either way).
+> 
+> 
+> Bug-Entry	: http://bugzilla.kernel.org/show_bug.cgi?id=13186
+> Subject		: cpufreq timer teardown problem
+> Submitter	: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+> Date		: 2009-04-23 14:00 (24 days old)
+> References	: http://marc.info/?l=linux-kernel&m=124049523515036&w=4
+> Handled-By	: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+> Patch		: http://patchwork.kernel.org/patch/19754/
+> 		  http://patchwork.kernel.org/patch/19753/
+> 
+
+(re-send with updated changelog)
+
+cpufreq fix timer teardown in conservative governor
+
+The problem is that dbs_timer_exit() uses cancel_delayed_work() when it should
+use cancel_delayed_work_sync(). cancel_delayed_work() does not wait for the
+workqueue handler to exit.
+
+The ondemand governor does not seem to be affected because the
+"if (!dbs_info->enable)" check at the beginning of the workqueue handler returns
+immediately without rescheduling the work. The conservative governor in
+2.6.30-rc has the same check as the ondemand governor, which makes things
+usually run smoothly. However, if the governor is quickly stopped and then
+started, this could lead to the following race :
+
+dbs_enable could be reenabled and multiple do_dbs_timer handlers would run.
+This is why a synchronized teardown is required.
+
+Depends on patch
+cpufreq: remove rwsem lock from CPUFREQ_GOV_STOP call
+
+The following patch applies to 2.6.30-rc2. Stable kernels have a similar
+issue which should also be fixed, but the code changed between 2.6.29
+and 2.6.30, so this patch only applies to 2.6.30-rc.
+
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+CC: Andrew Morton <akpm at linux-foundation.org>
+CC: gregkh at suse.de
+CC: stable at kernel.org
+CC: cpufreq at vger.kernel.org
+CC: Ingo Molnar <mingo at elte.hu>
+CC: rjw at sisk.pl
+CC: Ben Slusky <sluskyb at paranoiacs.org>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ drivers/cpufreq/cpufreq_conservative.c |    5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+Index: linux-2.6-lttng/drivers/cpufreq/cpufreq_conservative.c
+===================================================================
+--- linux-2.6-lttng.orig/drivers/cpufreq/cpufreq_conservative.c	2009-04-23 23:22:15.000000000 -0400
++++ linux-2.6-lttng/drivers/cpufreq/cpufreq_conservative.c	2009-04-23 23:24:38.000000000 -0400
+@@ -91,6 +91,9 @@ static unsigned int dbs_enable;	/* numbe
+  * (like __cpufreq_driver_target()) is being called with dbs_mutex taken, then
+  * cpu_hotplug lock should be taken before that. Note that cpu_hotplug lock
+  * is recursive for the same process. -Venki
++ * DEADLOCK ALERT! (2) : do_dbs_timer() must not take the dbs_mutex, because it
++ * would deadlock with cancel_delayed_work_sync(), which is needed for proper
++ * raceless workqueue teardown.
+  */
+ static DEFINE_MUTEX(dbs_mutex);
+ 
+@@ -542,7 +545,7 @@ static inline void dbs_timer_init(struct
+ static inline void dbs_timer_exit(struct cpu_dbs_info_s *dbs_info)
+ {
+ 	dbs_info->enable = 0;
+-	cancel_delayed_work(&dbs_info->work);
++	cancel_delayed_work_sync(&dbs_info->work);
+ }
+ 
+ static int cpufreq_governor_dbs(struct cpufreq_policy *policy,
+
+-- 
+Mathieu Desnoyers
+OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68
+
+From davej at redhat.com  Sun May 17 15:49:42 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n4HFmgEh009937
+	for <davej at kernel.org>; Sun, 17 May 2009 15:49:37 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n4HFmghJ015157
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:42 -0400
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n4HFmfSd023071
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:42 -0400
+Received: from gelk.kernelslacker.org (vpn-10-52.bos.redhat.com [10.16.10.52])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n4HFmfBD017674
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:41 -0400
+Received: from gelk.kernelslacker.org (gelk.kernelslacker.org [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n4HFmf2Y016386
+	for <davej at kernel.org>; Sun, 17 May 2009 11:48:41 -0400
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n4HFmfWo016385
+	for davej at kernel.org; Sun, 17 May 2009 11:48:41 -0400
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Sun, 17 May 2009 11:48:41 -0400
+Resent-Message-ID: <20090517154841.GC2602 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00,
+	UNPARSEABLE_RELAY autolearn=unavailable version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.52]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.9)
+	for <davej at localhost> (single-drop); Sun, 17 May 2009 11:47:41 -0400 (EDT)
+Received: from zmta01.collab.prod.int.phx2.redhat.com (LHLO
+ zmta01.collab.prod.int.phx2.redhat.com) (10.5.5.31) by
+ mail04.corp.redhat.com with LMTP; Sun, 17 May 2009 10:31:05 -0400 (EDT)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta01.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id B2F09901D1
+	for <davej at redhat.com>; Sun, 17 May 2009 10:31:05 -0400 (EDT)
+Received: from zmta01.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta01.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id n0hRzSXoSd7S for <davej at redhat.com>;
+	Sun, 17 May 2009 10:31:05 -0400 (EDT)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta01.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 7AA759017A
+	for <davej at mail.corp.redhat.com>; Sun, 17 May 2009 10:31:05 -0400 (EDT)
+Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n4HEV4wm013223
+	for <davej at redhat.com>; Sun, 17 May 2009 10:31:04 -0400
+Received: from tomts22-srv.bellnexxia.net (tomts22.bellnexxia.net [209.226.175.184])
+	by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n4HEUl7d006231
+	for <davej at redhat.com>; Sun, 17 May 2009 10:30:47 -0400
+Received: from toip3.srvr.bell.ca ([209.226.175.86])
+          by tomts22-srv.bellnexxia.net
+          (InterMail vM.5.01.06.13 201-253-122-130-113-20050324) with ESMTP
+          id <20090517143047.TSAM1553.tomts22-srv.bellnexxia.net at toip3.srvr.bell.ca>
+          for <davej at redhat.com>; Sun, 17 May 2009 10:30:47 -0400
+X-IronPort-Anti-Spam-Filtered: true
+X-IronPort-Anti-Spam-Result: Ao8IANG7D0pMQW1W/2dsb2JhbACBT4EwzSqCQoE/BQ
+Received: from bas5-montreal19-1279356246.dsl.bell.ca (HELO krystal.dyndns.org) ([76.65.109.86])
+  by toip3.srvr.bell.ca with ESMTP; 17 May 2009 10:24:55 -0400
+Received: from localhost (localhost [127.0.0.1])
+  (uid 1000)
+  by krystal.dyndns.org with local; Sun, 17 May 2009 10:30:45 -0400
+  id 0001401B.4A101F96.00006FC2
+Date: Sun, 17 May 2009 10:30:45 -0400
+From: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+To: "Rafael J. Wysocki" <rjw at sisk.pl>
+Cc: Linux Kernel Mailing List <linux-kernel at vger.kernel.org>,
+        Kernel Testers List <kernel-testers at vger.kernel.org>,
+        Andrew Morton <akpm at linux-foundation.org>, gregkh at suse.de,
+        stable at kernel.org, cpufreq at vger.kernel.org,
+        Ingo Molnar <mingo at elte.hu>, rjw at sisk.pl,
+        Ben Slusky <sluskyb at paranoiacs.org>, Dave Jones <davej at redhat.com>
+Subject: [CPUFREQ] fix timer teardown in ondemand governor
+Message-ID: <20090517143045.GC27882 at Krystal>
+References: <yO1BmxN79sN.A.xAG.8_zDKB at chimera> <pQ9WADCjgyE.A.PTG.HA0DKB at chimera>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Content-Transfer-Encoding: 7bit
+Content-Disposition: inline
+In-Reply-To: <pQ9WADCjgyE.A.PTG.HA0DKB at chimera>
+X-Editor: vi
+X-Info: http://krystal.dyndns.org:8080
+X-Operating-System: Linux/2.6.21.3-grsec (i686)
+X-Uptime: 10:29:34 up 78 days, 10:55,  3 users,  load average: 0.53, 0.34,
+	0.30
+User-Agent: Mutt/1.5.18 (2008-05-17)
+X-RedHat-Spam-Score: -1.497 
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Scanned-By: MIMEDefang 2.63 on 172.16.48.31
+X-Virus-Scanned: ClamAV 0.93.3/9365/Sat May 16 12:41:29 2009 on hera.kernel.org
+X-Virus-Status: Clean
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Sun, 17 May 2009 15:49:42 +0000 (UTC)
+Status: RO
+Content-Length: 3380
+Lines: 81
+
+* Rafael J. Wysocki (rjw at sisk.pl) wrote:
+> This message has been generated automatically as a part of a report
+> of regressions introduced between 2.6.28 and 2.6.29.
+> 
+> The following bug entry is on the current list of known regressions
+> introduced between 2.6.28 and 2.6.29.  Please verify if it still should
+> be listed and let me know (either way).
+> 
+> 
+> Bug-Entry	: http://bugzilla.kernel.org/show_bug.cgi?id=13186
+> Subject		: cpufreq timer teardown problem
+> Submitter	: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+> Date		: 2009-04-23 14:00 (24 days old)
+> References	: http://marc.info/?l=linux-kernel&m=124049523515036&w=4
+> Handled-By	: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+> Patch		: http://patchwork.kernel.org/patch/19754/
+> 		  http://patchwork.kernel.org/patch/19753/
+> 
+
+(updated changelog)
+
+cpufreq fix timer teardown in ondemand governor
+
+The problem is that dbs_timer_exit() uses cancel_delayed_work() when it should
+use cancel_delayed_work_sync(). cancel_delayed_work() does not wait for the
+workqueue handler to exit.
+
+The ondemand governor does not seem to be affected because the
+"if (!dbs_info->enable)" check at the beginning of the workqueue handler returns
+immediately without rescheduling the work. The conservative governor in
+2.6.30-rc has the same check as the ondemand governor, which makes things
+usually run smoothly. However, if the governor is quickly stopped and then
+started, this could lead to the following race :
+
+dbs_enable could be reenabled and multiple do_dbs_timer handlers would run.
+This is why a synchronized teardown is required.
+
+The following patch applies to, at least, 2.6.28.x, 2.6.29.1, 2.6.30-rc2.
+
+Depends on patch
+cpufreq: remove rwsem lock from CPUFREQ_GOV_STOP call
+
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers at polymtl.ca>
+CC: Andrew Morton <akpm at linux-foundation.org>
+CC: gregkh at suse.de
+CC: stable at kernel.org
+CC: cpufreq at vger.kernel.org
+CC: Ingo Molnar <mingo at elte.hu>
+CC: rjw at sisk.pl
+CC: Ben Slusky <sluskyb at paranoiacs.org>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ drivers/cpufreq/cpufreq_ondemand.c |    5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+Index: linux-2.6-lttng/drivers/cpufreq/cpufreq_ondemand.c
+===================================================================
+--- linux-2.6-lttng.orig/drivers/cpufreq/cpufreq_ondemand.c	2009-04-23 23:25:00.000000000 -0400
++++ linux-2.6-lttng/drivers/cpufreq/cpufreq_ondemand.c	2009-04-23 23:25:39.000000000 -0400
+@@ -98,6 +98,9 @@ static unsigned int dbs_enable;	/* numbe
+  * (like __cpufreq_driver_target()) is being called with dbs_mutex taken, then
+  * cpu_hotplug lock should be taken before that. Note that cpu_hotplug lock
+  * is recursive for the same process. -Venki
++ * DEADLOCK ALERT! (2) : do_dbs_timer() must not take the dbs_mutex, because it
++ * would deadlock with cancel_delayed_work_sync(), which is needed for proper
++ * raceless workqueue teardown.
+  */
+ static DEFINE_MUTEX(dbs_mutex);
+ 
+@@ -562,7 +565,7 @@ static inline void dbs_timer_init(struct
+ static inline void dbs_timer_exit(struct cpu_dbs_info_s *dbs_info)
+ {
+ 	dbs_info->enable = 0;
+-	cancel_delayed_work(&dbs_info->work);
++	cancel_delayed_work_sync(&dbs_info->work);
+ }
+ 
+ static int cpufreq_governor_dbs(struct cpufreq_policy *policy,
+-- 
+Mathieu Desnoyers
+OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68
+
+From davej at redhat.com  Thu Apr 23 03:03:16 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n3N32CHF005632
+	for <davej at kernel.org>; Thu, 23 Apr 2009 03:03:04 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n3N32B6w021628
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:12 -0400
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3N32Bvf031974
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:11 -0400
+Received: from gelk.kernelslacker.org (vpn-10-42.bos.redhat.com [10.16.10.42])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n3N32789020892
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:10 -0400
+Received: from gelk.kernelslacker.org (gelk.kernelslacker.org [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n3MNHrO3003696
+	for <davej at kernel.org>; Wed, 22 Apr 2009 19:18:11 -0400
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n3MNHX0g003683
+	for davej at kernel.org; Wed, 22 Apr 2009 19:17:33 -0400
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Wed, 22 Apr 2009 19:17:33 -0400
+Resent-Message-ID: <20090422231733.GC27613 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-7.0 required=5.0 tests=AWL,BAYES_00,
+	RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.51]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.9)
+	for <davej at localhost> (single-drop); Wed, 22 Apr 2009 12:09:29 -0400 (EDT)
+Received: from zmta01.collab.prod.int.phx2.redhat.com (LHLO
+ zmta01.collab.prod.int.phx2.redhat.com) (10.5.5.31) by
+ mail04.corp.redhat.com with LMTP; Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta01.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 6456290877
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from zmta01.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta01.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id H0qsPPuZenEx for <davej at redhat.com>;
+	Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta01.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 337839086A
+	for <davej at mail.corp.redhat.com>; Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3MBmmxK030298
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:48 -0400
+Received: from mx2.suse.de (cantor2.suse.de [195.135.220.15])
+	by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n3MBmYXc003149
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:34 -0400
+Received: from Relay1.suse.de (relay-ext.suse.de [195.135.221.8])
+	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by mx2.suse.de (Postfix) with ESMTP id B3A5A79727;
+	Wed, 22 Apr 2009 13:48:33 +0200 (CEST)
+From: Thomas Renninger <trenn at suse.de>
+To: davej at redhat.com
+Cc: cpufreq at vger.kernel.org, Thomas Renninger <trenn at suse.de>,
+        "Langsdorf, Mark" <mark.langsdorf at amd.com>
+Subject: [CPUFREQ] powernow-k8 cleanup msg if BIOS does not export ACPI _PSS cpufreq data
+Date: Wed, 22 Apr 2009 13:48:32 +0200
+Message-Id: <1240400913-8069-5-git-send-email-trenn at suse.de>
+In-Reply-To: <1240400913-8069-1-git-send-email-trenn at suse.de>
+References: <1240400913-8069-1-git-send-email-trenn at suse.de>
+X-RedHat-Spam-Score: -3.937 
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Scanned-By: MIMEDefang 2.63 on 172.16.48.31
+X-Virus-Scanned: ClamAV 0.93.3/9276/Wed Apr 22 22:55:59 2009 on hera.kernel.org
+X-Virus-Status: Clean
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Thu, 23 Apr 2009 03:03:16 +0000 (UTC)
+Status: RO
+Content-Length: 1871
+Lines: 54
+
+- Make the message shorter and easier to grep for
+- Use printk_once instead of WARN_ONCE (functionality of these was mixed)
+
+Signed-off-by: Thomas Renninger <trenn at suse.de>
+Cc: Langsdorf, Mark <mark.langsdorf at amd.com>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ arch/x86/kernel/cpu/cpufreq/powernow-k8.c |   19 +++++--------------
+ 1 files changed, 5 insertions(+), 14 deletions(-)
+
+diff --git a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
+index f023506..a22159b 100644
+--- a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
++++ b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
+@@ -1228,13 +1228,16 @@ static int powernowk8_verify(struct cpufreq_policy *pol)
+ 	return cpufreq_frequency_table_verify(pol, data->powernow_table);
+ }
+ 
++static const char ACPI_PSS_BIOS_BUG_MSG[] =
++	KERN_ERR FW_BUG PFX "No compatible ACPI _PSS objects found.\n"
++	KERN_ERR FW_BUG PFX "Try again with latest BIOS.\n";
++
+ /* per CPU init entry point to the driver */
+ static int __cpuinit powernowk8_cpu_init(struct cpufreq_policy *pol)
+ {
+ 	struct powernow_k8_data *data;
+ 	cpumask_t oldmask;
+ 	int rc;
+-	static int print_once;
+ 
+ 	if (!cpu_online(pol->cpu))
+ 		return -ENODEV;
+@@ -1257,19 +1260,7 @@ static int __cpuinit powernowk8_cpu_init(struct cpufreq_policy *pol)
+ 		 * an UP version, and is deprecated by AMD.
+ 		 */
+ 		if (num_online_cpus() != 1) {
+-			/*
+-			 * Replace this one with print_once as soon as such a
+-			 * thing gets introduced
+-			 */
+-			if (!print_once) {
+-				WARN_ONCE(1, KERN_ERR FW_BUG PFX "Your BIOS "
+-					"does not provide ACPI _PSS objects "
+-					"in a way that Linux understands. "
+-					"Please report this to the Linux ACPI"
+-					" maintainers and complain to your "
+-					"BIOS vendor.\n");
+-				print_once++;
+-			}
++			printk_once(ACPI_PSS_BIOS_BUG_MSG);
+ 			goto err_out;
+ 		}
+ 		if (pol->cpu != 0) {
+-- 
+1.6.0.2
+
+From davej at redhat.com  Thu Apr 23 03:03:11 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n3N32CFv005633
+	for <davej at kernel.org>; Thu, 23 Apr 2009 03:03:04 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n3N32CGg021632
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:12 -0400
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3N32BJh031978
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:11 -0400
+Received: from gelk.kernelslacker.org (vpn-10-42.bos.redhat.com [10.16.10.42])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n3N3278B020892
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:11 -0400
+Received: from gelk.kernelslacker.org (gelk.kernelslacker.org [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n3MNHtT6003698
+	for <davej at kernel.org>; Wed, 22 Apr 2009 19:18:11 -0400
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n3MNHZcE003687
+	for davej at kernel.org; Wed, 22 Apr 2009 19:17:35 -0400
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Wed, 22 Apr 2009 19:17:35 -0400
+Resent-Message-ID: <20090422231735.GE27613 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-9.0 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,
+	UNPARSEABLE_RELAY autolearn=ham version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.51]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.9)
+	for <davej at localhost> (single-drop); Wed, 22 Apr 2009 12:09:41 -0400 (EDT)
+Received: from zmta02.collab.prod.int.phx2.redhat.com (LHLO
+ zmta02.collab.prod.int.phx2.redhat.com) (10.5.5.32) by
+ mail04.corp.redhat.com with LMTP; Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta02.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 646679C57C
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from zmta02.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta02.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id lFnn0B1JZEbv for <davej at redhat.com>;
+	Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta02.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 320759C564
+	for <davej at mail.corp.redhat.com>; Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3MBmmd0030295
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:48 -0400
+Received: from mx1.suse.de (cantor.suse.de [195.135.220.2])
+	by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n3MBmXgC003143
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:34 -0400
+Received: from Relay2.suse.de (relay-ext.suse.de [195.135.221.8])
+	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by mx1.suse.de (Postfix) with ESMTP id 9AD288E8CC;
+	Wed, 22 Apr 2009 13:48:33 +0200 (CEST)
+From: Thomas Renninger <trenn at suse.de>
+To: davej at redhat.com
+Cc: cpufreq at vger.kernel.org, Andreas Herrmann <andreas.herrmann3 at amd.com>,
+        Thomas Renninger <trenn at suse.de>
+Subject: [CPUFREQ] powernow-k8: determine exact CPU frequency for HW Pstates
+Date: Wed, 22 Apr 2009 13:48:33 +0200
+Message-Id: <1240400913-8069-6-git-send-email-trenn at suse.de>
+In-Reply-To: <1240400913-8069-1-git-send-email-trenn at suse.de>
+References: <1240400913-8069-1-git-send-email-trenn at suse.de>
+X-RedHat-Spam-Score: -5.929 
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Scanned-By: MIMEDefang 2.63 on 172.16.48.31
+X-Virus-Scanned: ClamAV 0.93.3/9276/Wed Apr 22 22:55:59 2009 on hera.kernel.org
+X-Virus-Status: Clean
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Thu, 23 Apr 2009 03:03:11 +0000 (UTC)
+Status: RO
+Content-Length: 2610
+Lines: 80
+
+From: Andreas Herrmann <andreas.herrmann3 at amd.com>
+
+Slightly modified by trenn at suse.de -> only do this on fam 10h and fam 11h.
+
+Currently powernow-k8 determines CPU frequency from ACPI PSS objects, but
+according to AMD family 11h BKDG this frequency is just a rounded value:
+
+  "CoreFreq (MHz) = The CPU COF specified by MSRC001_00[6B:64][CpuFid]
+  rounded to the nearest 100 Mhz."
+
+As a consequnce powernow-k8 reports wrong CPU frequency on some systems,
+e.g. on Turion X2 Ultra:
+
+  powernow-k8: Found 1 AMD Turion(tm)X2 Ultra DualCore Mobile ZM-82
+               processors (2 cpu cores) (version 2.20.00)
+  powernow-k8:    0 : pstate 0 (2200 MHz)
+  powernow-k8:    1 : pstate 1 (1100 MHz)
+  powernow-k8:    2 : pstate 2 (600 MHz)
+
+But this is wrong as frequency for Pstate2 is 550 MHz. x86info reports it
+correctly:
+
+  #x86info -a |grep Pstate
+  ...
+  Pstate-0: fid=e, did=0, vid=24 (2200MHz)
+  Pstate-1: fid=e, did=1, vid=30 (1100MHz)
+  Pstate-2: fid=e, did=2, vid=3c (550MHz) (current)
+
+Solution is to determine the frequency directly from Pstate MSRs instead
+of using rounded values from ACPI table.
+
+Signed-off-by: Andreas Herrmann <andreas.herrmann3 at amd.com>
+Signed-off-by: Thomas Renninger <trenn at suse.de>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ arch/x86/kernel/cpu/cpufreq/powernow-k8.c |   23 +++++++++++++++++++++--
+ 1 files changed, 21 insertions(+), 2 deletions(-)
+
+diff --git a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
+index a22159b..15e8562 100644
+--- a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
++++ b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
+@@ -649,6 +649,20 @@ static void print_basics(struct powernow_k8_data *data)
+ 				data->batps);
+ }
+ 
++static u32 freq_from_fid_did(u32 fid, u32 did)
++{
++	u32 mhz = 0;
++
++	if (boot_cpu_data.x86 == 0x10)
++		mhz = (100 * (fid + 0x10)) >> did;
++	else if (boot_cpu_data.x86 == 0x11)
++		mhz = (100 * (fid + 8)) >> did;
++	else
++		BUG();
++
++	return mhz * 1000;
++}
++
+ static int fill_powernow_table(struct powernow_k8_data *data,
+ 		struct pst_s *pst, u8 maxvid)
+ {
+@@ -923,8 +937,13 @@ static int fill_powernow_table_pstate(struct powernow_k8_data *data,
+ 
+ 		powernow_table[i].index = index;
+ 
+-		powernow_table[i].frequency =
+-			data->acpi_data.states[i].core_frequency * 1000;
++		/* Frequency may be rounded for these */
++		if (boot_cpu_data.x86 == 0x10 || boot_cpu_data.x86 == 0x11) {
++			powernow_table[i].frequency =
++				freq_from_fid_did(lo & 0x3f, (lo >> 6) & 7);
++		} else
++			powernow_table[i].frequency =
++				data->acpi_data.states[i].core_frequency * 1000;
+ 	}
+ 	return 0;
+ }
+-- 
+1.6.0.2
+
+From davej at codemonkey.org.uk  Tue May 26 14:18:04 2009
+Return-Path: <davej at codemonkey.org.uk>
+Received: from testure.choralone.org (testure.choralone.org [194.9.77.134])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n4QEH6hb002571
+	(version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO)
+	for <davej at kernel.org>; Tue, 26 May 2009 14:18:00 GMT
+Received: from davej by testure.choralone.org with local (Exim 4.69)
+	(envelope-from <davej at codemonkey.org.uk>)
+	id 1M8whl-0000bU-5L
+	for davej at kernel.org; Tue, 26 May 2009 14:28:33 +0100
+Resent-From: davej at codemonkey.org.uk
+Resent-Date: Tue, 26 May 2009 09:28:33 -0400
+Resent-Message-ID: <20090526132833.GB2232 at codemonkey.org.uk>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-6.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED,
+	UNPARSEABLE_RELAY autolearn=ham version=3.2.5
+Received: from cantor2.suse.de ([195.135.220.15] helo=mx2.suse.de)
+	by testure.choralone.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)
+	(Exim 4.69)
+	(envelope-from <nagananda.chumbalkar at hp.com>)
+	id 1M8vfj-00086w-Lw
+	for davej at codemonkey.org.uk; Tue, 26 May 2009 13:22:23 +0100
+Received: from relay2.suse.de (mail2.suse.de [195.135.221.8])
+	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by mx2.suse.de (Postfix) with ESMTP id 93FE074862
+	for <davej at codemonkey.org.uk>; Tue, 26 May 2009 14:22:20 +0200 (CEST)
+Resent-From: Thomas Renninger <trenn at suse.de>
+Resent-To: Dave Jones <davej at codemonkey.org.uk>
+Resent-Date: Tue, 26 May 2009 12:22:19 +0000
+Resent-Message-ID: <200905261422.19888.nagananda.chumbalkar at hp.com>
+X-Sieve: CMU Sieve 2.2
+Received: from mx1.suse.de (cantor.suse.de [195.135.220.2])
+	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by relay1.suse.de (Postfix) with ESMTP id 93BCE344BA60
+	for <trenn at suse.de>; Fri, 22 May 2009 01:29:51 +0200 (CEST)
+Received: from g5t0009.atlanta.hp.com (g5t0009.atlanta.hp.com [15.192.0.46])
+	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by mx1.suse.de (Postfix) with ESMTP id 6179A74609
+	for <trenn at suse.de>; Fri, 22 May 2009 01:29:50 +0200 (CEST)
+Received: from g1t0039.austin.hp.com (g1t0039.austin.hp.com [16.236.32.45])
+	by g5t0009.atlanta.hp.com (Postfix) with ESMTP id 2DD253000A
+	for <trenn at suse.de>; Thu, 21 May 2009 23:29:49 +0000 (UTC)
+Received: from localhost.localdomain (unknown [16.84.217.10])
+	by g1t0039.austin.hp.com (Postfix) with ESMTP id D2F3934059;
+	Thu, 21 May 2009 23:29:48 +0000 (UTC)
+From: Chumbalkar Nagananda <nagananda.chumbalkar at hp.com>
+To: trenn at suse.de
+Cc: Chumbalkar Nagananda <nagananda.chumbalkar at hp.com>
+Message-Id: <20090411032405.12210.3836.sendpatchset at localhost.localdomain>
+Subject: [CPUFREQ] minor correction to cpu-freq documentation
+Date: Thu, 21 May 2009 23:29:48 +0000 (UTC)
+X-Virus-Scanned: ClamAV 0.93.3/9393/Tue May 26 10:17:55 2009 on hera.kernel.org
+X-Virus-Scanned: by amavisd-new at localhost
+X-Length: 3853
+X-UID: 234932
+Resent-Date: Tue, 26 May 2009 14:28:33 +0100
+X-Virus-Status: Clean
+X-Greylist: Delayed for 00:48:27 by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Tue, 26 May 2009 14:18:04 +0000 (UTC)
+Status: RO
+Content-Length: 1333
+Lines: 39
+
+I have been reading the documentation for cpufreq closely. Found a couple of
+minor errors in the Documentation.
+
+Signed-off-by: Naga Chumbalkar <nagananda.chumbalkar at hp.com>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ Documentation/cpu-freq/cpu-drivers.txt |    2 +-
+ Documentation/cpu-freq/user-guide.txt  |    1 -
+ 2 files changed, 1 insertions(+), 2 deletions(-)
+
+diff --git a/Documentation/cpu-freq/cpu-drivers.txt b/Documentation/cpu-freq/cpu-drivers.txt
+index 43c7439..75a58d1 100644
+--- a/Documentation/cpu-freq/cpu-drivers.txt
++++ b/Documentation/cpu-freq/cpu-drivers.txt
+@@ -155,7 +155,7 @@ actual frequency must be determined using the following rules:
+ - if relation==CPUFREQ_REL_H, try to select a new_freq lower than or equal
+   target_freq. ("H for highest, but no higher than")
+ 
+-Here again the frequency table helper might assist you - see section 3
++Here again the frequency table helper might assist you - see section 2
+ for details.
+ 
+ 
+diff --git a/Documentation/cpu-freq/user-guide.txt b/Documentation/cpu-freq/user-guide.txt
+index 75f4119..5d5f5fa 100644
+--- a/Documentation/cpu-freq/user-guide.txt
++++ b/Documentation/cpu-freq/user-guide.txt
+@@ -31,7 +31,6 @@ Contents:
+ 
+ 3. How to change the CPU cpufreq policy and/or speed
+ 3.1 Preferred interface: sysfs
+-3.2 Deprecated interfaces
+ 
+ 
+ 
+-- 
+1.6.2.2
+
+From davej at redhat.com  Sat May 23 20:09:06 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n4NK89lZ002669
+	for <davej at kernel.org>; Sat, 23 May 2009 20:09:01 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n4NK8828006294
+	for <davej at kernel.org>; Sat, 23 May 2009 16:08:08 -0400
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n4NK88UF025169
+	for <davej at kernel.org>; Sat, 23 May 2009 16:08:08 -0400
+Received: from gelk.kernelslacker.org (vpn-10-17.bos.redhat.com [10.16.10.17])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n4NK87d8001649
+	for <davej at kernel.org>; Sat, 23 May 2009 16:08:07 -0400
+Received: from gelk.kernelslacker.org (gelk.kernelslacker.org [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n4NK86wr020454
+	for <davej at kernel.org>; Sat, 23 May 2009 16:08:06 -0400
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n4NK86mY020453
+	for davej at kernel.org; Sat, 23 May 2009 16:08:06 -0400
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Sat, 23 May 2009 16:08:06 -0400
+Resent-Message-ID: <20090523200806.GA3447 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00,RDNS_DYNAMIC,
+	UNPARSEABLE_RELAY autolearn=no version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.51]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.9)
+	for <davej at localhost> (single-drop); Sat, 23 May 2009 16:05:48 -0400 (EDT)
+Received: from zmta03.collab.prod.int.phx2.redhat.com (LHLO
+ zmta03.collab.prod.int.phx2.redhat.com) (10.5.5.33) by
+ mail04.corp.redhat.com with LMTP; Sat, 23 May 2009 12:51:29 -0400 (EDT)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 998704C613
+	for <davej at redhat.com>; Sat, 23 May 2009 12:51:29 -0400 (EDT)
+Received: from zmta03.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta03.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id 0JMos4aMr15G for <davej at redhat.com>;
+	Sat, 23 May 2009 12:51:29 -0400 (EDT)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 5E2934C52B
+	for <davej at mail.corp.redhat.com>; Sat, 23 May 2009 12:51:29 -0400 (EDT)
+Received: from mx3.redhat.com (mx3.redhat.com [172.16.48.32])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n4NGpSEx008768
+	for <davej at redhat.com>; Sat, 23 May 2009 12:51:28 -0400
+Received: from mail.perches.com (136-022.dsl.LABridge.com [206.117.136.22])
+	by mx3.redhat.com (8.13.8/8.13.8) with ESMTP id n4NGonjU005060
+	for <davej at redhat.com>; Sat, 23 May 2009 12:51:03 -0400
+Received: from [192.168.1.158] ([192.168.1.158])
+	by mail.perches.com (8.9.3/8.9.3) with ESMTP id JAA13595;
+	Sat, 23 May 2009 09:50:36 -0700
+Subject: [CPUFREQ] acpi-cpufreq.c - Fix typo and indentation
+From: Joe Perches <joe at perches.com>
+To: Dave Jones <davej at redhat.com>
+Cc: cpufreq at vger.kernel.org, linux-kernel at vger.kernel.org
+Content-Type: text/plain
+Date: Sat, 23 May 2009 09:50:45 -0700
+Message-Id: <1243097445.3506.4.camel at Joe-Laptop.home>
+Mime-Version: 1.0
+Content-Transfer-Encoding: 7bit
+X-RedHat-Spam-Score: -0.557 
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Scanned-By: MIMEDefang 2.63 on 172.16.48.32
+X-Virus-Scanned: ClamAV 0.93.3/9384/Sat May 23 18:15:33 2009 on hera.kernel.org
+X-Virus-Status: Clean
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Sat, 23 May 2009 20:09:06 +0000 (UTC)
+Status: RO
+Content-Length: 783
+Lines: 17
+
+Signed-off-by: Joe Perches <joe at perches.com>
+Signed-off-by: Dave Jones <davej at redhat.com>
+
+diff --git a/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c b/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c
+index 208ecf6..54b6de2 100644
+--- a/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c
++++ b/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c
+@@ -693,8 +693,8 @@ static int acpi_cpufreq_cpu_init(struct cpufreq_policy *policy)
+ 	if (perf->control_register.space_id == ACPI_ADR_SPACE_FIXED_HARDWARE &&
+ 	    policy->cpuinfo.transition_latency > 20 * 1000) {
+ 		policy->cpuinfo.transition_latency = 20 * 1000;
+-			printk_once(KERN_INFO "Capping off P-state tranision"
+-				    " latency at 20 uS\n");
++		printk_once(KERN_INFO
++			    "P-state transition latency capped at 20 uS\n");
+ 	}
+ 
+ 	/* table init */
+
+From davej at redhat.com  Fri Apr 24 14:52:51 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n3OEpqnj014874
+	for <davej at kernel.org>; Fri, 24 Apr 2009 14:52:45 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n3OEpqNE006105
+	for <davej at kernel.org>; Fri, 24 Apr 2009 10:51:52 -0400
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3OEppZU030418
+	for <davej at kernel.org>; Fri, 24 Apr 2009 10:51:51 -0400
+Received: from gelk.kernelslacker.org (vpn-10-52.bos.redhat.com [10.16.10.52])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n3OEpo3S010034
+	for <davej at kernel.org>; Fri, 24 Apr 2009 10:51:50 -0400
+Received: from gelk.kernelslacker.org (gelk.kernelslacker.org [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n3OEpnA2020034
+	for <davej at kernel.org>; Fri, 24 Apr 2009 10:51:49 -0400
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n3OEpmIU020032
+	for davej at kernel.org; Fri, 24 Apr 2009 10:51:48 -0400
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Fri, 24 Apr 2009 10:51:48 -0400
+Resent-Message-ID: <20090424145148.GB18310 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-1.9 required=5.0 tests=AWL,RCVD_IN_DNSWL_MED,
+	UNPARSEABLE_RELAY autolearn=ham version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.51]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.9)
+	for <davej at localhost> (single-drop); Thu, 23 Apr 2009 15:28:20 -0400 (EDT)
+Received: from zmta02.collab.prod.int.phx2.redhat.com (LHLO
+ zmta02.collab.prod.int.phx2.redhat.com) (10.5.5.32) by
+ mail04.corp.redhat.com with LMTP; Thu, 23 Apr 2009 14:48:32 -0400 (EDT)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta02.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 105999DEA7;
+	Thu, 23 Apr 2009 14:48:32 -0400 (EDT)
+Received: from zmta02.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta02.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id lO8MMt-svZl8; Thu, 23 Apr 2009 14:48:31 -0400 (EDT)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta02.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 8E7389DEA2;
+	Thu, 23 Apr 2009 14:48:31 -0400 (EDT)
+Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3NImSJB020514;
+	Thu, 23 Apr 2009 14:48:28 -0400
+Received: from vger.kernel.org (vger.kernel.org [209.132.176.167])
+	by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n3NIRfka017123;
+	Thu, 23 Apr 2009 14:48:13 -0400
+Received: (majordomo at vger.kernel.org) by vger.kernel.org via listexpand
+	id S1758722AbZDWSsM (ORCPT <rfc822;SteveD at redhat.com> + 36 others);
+	Thu, 23 Apr 2009 14:48:12 -0400
+Received: (majordomo at vger.kernel.org) by vger.kernel.org id S1755388AbZDWSr5
+	(ORCPT <rfc822;linux-kernel-outgoing>);
+	Thu, 23 Apr 2009 14:47:57 -0400
+Received: from relay1.ptmail.sapo.pt ([212.55.154.21]:56964 "HELO sapo.pt"
+	rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with SMTP
+	id S1753702AbZDWSr5 (ORCPT <rfc822;linux-kernel at vger.kernel.org>);
+	Thu, 23 Apr 2009 14:47:57 -0400
+Received: (qmail 14804 invoked from network); 23 Apr 2009 18:47:37 -0000
+Received: from unknown (HELO sapo.pt) (10.134.37.164)
+  by relay1 with SMTP; 23 Apr 2009 18:47:37 -0000
+Received: (qmail 17586 invoked from network); 23 Apr 2009 18:47:53 -0000
+X-AntiVirus: PTMail-AV 0.3-0.92.0
+X-Virus-Status: Clean
+Received: from unknown (HELO localhost) (henrix at sapo.pt@[89.234.125.123])
+          (envelope-sender <henrix at sapo.pt>)
+          by mta14 (qmail-ldap-1.03) with SMTP
+          for <mingo at elte.hu>; 23 Apr 2009 18:47:52 -0000
+Date: 	Thu, 23 Apr 2009 19:45:04 +0100
+From: Luis Henriques <henrix at sapo.pt>
+To: Ingo Molnar <mingo at elte.hu>
+Cc: Paul Devriendt <paul.devriendt at amd.com>,
+        Mark Langsdorf <mark.langsdorf at amd.com>, linux-kernel at vger.kernel.org
+Subject: [CPUFREQ] powernow-k8.c: mess cleanup
+Message-ID: <20090423184504.GA5487 at hades.domain.com>
+MIME-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Content-Disposition: inline
+User-Agent: Mutt/1.5.18 (2008-05-17)
+Sender: linux-kernel-owner at vger.kernel.org
+Precedence: bulk
+List-ID: <linux-kernel.vger.kernel.org>
+X-Mailing-List: 	linux-kernel at vger.kernel.org
+X-RedHat-Spam-Score: -3.735 
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Scanned-By: MIMEDefang 2.63 on 172.16.48.31
+X-Virus-Scanned: ClamAV 0.93.3/9284/Fri Apr 24 12:38:03 2009 on hera.kernel.org
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Fri, 24 Apr 2009 14:52:51 +0000 (UTC)
+Status: RO
+Content-Length: 1925
+Lines: 46
+
+Mess cleanup in powernow_k8_acpi_pst_values() function.
+
+Signed-off-by: Luis Henriques <henrix at sapo.pt>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ arch/x86/kernel/cpu/cpufreq/powernow-k8.c |   16 +++++++++-------
+ 1 files changed, 9 insertions(+), 7 deletions(-)
+
+diff --git a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
+index 4709ead..6c31f95 100644
+--- a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
++++ b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
+@@ -1,3 +1,4 @@
++
+ /*
+  *   (c) 2003-2006 Advanced Micro Devices, Inc.
+  *  Your use of this code is subject to the terms and conditions of the
+@@ -809,13 +810,14 @@ static void powernow_k8_acpi_pst_values(struct powernow_k8_data *data,
+ 	if (!data->acpi_data.state_count || (cpu_family == CPU_HW_PSTATE))
+ 		return;
+ 
+-	control = data->acpi_data.states[index].control; data->irt = (control
+-			>> IRT_SHIFT) & IRT_MASK; data->rvo = (control >>
+-				RVO_SHIFT) & RVO_MASK; data->exttype = (control
+-					>> EXT_TYPE_SHIFT) & EXT_TYPE_MASK;
+-	data->plllock = (control >> PLL_L_SHIFT) & PLL_L_MASK; data->vidmvs = 1
+-		<< ((control >> MVS_SHIFT) & MVS_MASK); data->vstable =
+-		(control >> VST_SHIFT) & VST_MASK; }
++	control = data->acpi_data.states[index].control;
++	data->irt = (control >> IRT_SHIFT) & IRT_MASK;
++	data->rvo = (control >> RVO_SHIFT) & RVO_MASK;
++	data->exttype = (control >> EXT_TYPE_SHIFT) & EXT_TYPE_MASK;
++	data->plllock = (control >> PLL_L_SHIFT) & PLL_L_MASK;
++	data->vidmvs = 1 << ((control >> MVS_SHIFT) & MVS_MASK);
++	data->vstable = (control >> VST_SHIFT) & VST_MASK;
++}
+ 
+ static int powernow_k8_cpu_init_acpi(struct powernow_k8_data *data)
+ {
+-- 
+1.6.2.4
+
+--
+To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
+the body of a message to majordomo at vger.kernel.org
+More majordomo info at  http://vger.kernel.org/majordomo-info.html
+Please read the FAQ at  http://www.tux.org/lkml/
+
+From davej at redhat.com  Thu Apr 23 03:03:17 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n3N32DsU005661
+	for <davej at kernel.org>; Thu, 23 Apr 2009 03:03:04 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n3N32DVj021646
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:13 -0400
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3N32Cbo031996
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:13 -0400
+Received: from gelk.kernelslacker.org (vpn-10-42.bos.redhat.com [10.16.10.42])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n3N3278F020892
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:12 -0400
+Received: from gelk.kernelslacker.org (gelk.kernelslacker.org [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n3MNHssC003697
+	for <davej at kernel.org>; Wed, 22 Apr 2009 19:18:11 -0400
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n3MNHYX7003685
+	for davej at kernel.org; Wed, 22 Apr 2009 19:17:34 -0400
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Wed, 22 Apr 2009 19:17:34 -0400
+Resent-Message-ID: <20090422231734.GD27613 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-7.0 required=5.0 tests=AWL,BAYES_00,
+	RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.51]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.9)
+	for <davej at localhost> (single-drop); Wed, 22 Apr 2009 12:09:35 -0400 (EDT)
+Received: from zmta03.collab.prod.int.phx2.redhat.com (LHLO
+ zmta03.collab.prod.int.phx2.redhat.com) (10.5.5.33) by
+ mail04.corp.redhat.com with LMTP; Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 6A6784D269
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from zmta03.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta03.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id 9XhfblBvzPro for <davej at redhat.com>;
+	Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 272B64D26F
+	for <davej at mail.corp.redhat.com>; Wed, 22 Apr 2009 07:48:50 -0400 (EDT)
+Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3MBmnSV030300
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:49 -0400
+Received: from mx2.suse.de (cantor2.suse.de [195.135.220.15])
+	by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n3MBmYp1003151
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:34 -0400
+Received: from Relay1.suse.de (mail2.suse.de [195.135.221.8])
+	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by mx2.suse.de (Postfix) with ESMTP id B441C8640B;
+	Wed, 22 Apr 2009 13:48:33 +0200 (CEST)
+From: Thomas Renninger <trenn at suse.de>
+To: davej at redhat.com
+Cc: cpufreq at vger.kernel.org, Thomas Renninger <trenn at suse.de>,
+        Pallipadi Venkatesh <venkatesh.pallipadi at intel.com>
+Subject: [CPUFREQ] ondemand: Uncouple minimal sampling rate from HZ in NO_HZ case
+Date: Wed, 22 Apr 2009 13:48:29 +0200
+Message-Id: <1240400913-8069-2-git-send-email-trenn at suse.de>
+In-Reply-To: <1240400913-8069-1-git-send-email-trenn at suse.de>
+References: <1240400913-8069-1-git-send-email-trenn at suse.de>
+X-RedHat-Spam-Score: -3.937 
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Scanned-By: MIMEDefang 2.63 on 172.16.48.31
+X-Virus-Scanned: ClamAV 0.93.3/9276/Wed Apr 22 22:55:59 2009 on hera.kernel.org
+X-Virus-Status: Clean
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Thu, 23 Apr 2009 03:03:17 +0000 (UTC)
+Status: RO
+Content-Length: 8258
+Lines: 223
+
+With this patch you have following minimal sampling rate restrictions:
+
+Kernel restrictions:
+If CONFIG_NO_HZ is set, the limit is 10ms fixed.
+If CONFIG_NO_HZ is not set or no_hz=off boot parameter is used, the
+limits depend on the CONFIG_HZ option:
+HZ=1000: min=20000us  (20ms)
+HZ=250:  min=80000us  (80ms)
+HZ=100:  min=200000us (200ms)
+
+HW restrictions:
+Do not sample/poll more often than HW latency * 100  exported by the low
+level cpufreq HW driver
+
+The higher value of above restrictions is the minimal sampling rate
+that can be set (and can be seen via ondemand/sampling_rate_min sysfs file)
+
+Default sampling rate still is HW latency * 1000, but this will now end
+up in lower values on latest (Intel and AMD) hardware as these can switch
+really fast and sampling rate mostly was limited to the 80ms or 200ms
+(depending on whether HZ=250 or HZ=1000 is used).
+
+Signed-off-by: Thomas Renninger <trenn at suse.de>
+Cc: Pallipadi Venkatesh <venkatesh.pallipadi at intel.com>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ drivers/cpufreq/cpufreq_conservative.c |   44 +++++++++++----------------
+ drivers/cpufreq/cpufreq_ondemand.c     |   50 ++++++++++++++-----------------
+ 2 files changed, 41 insertions(+), 53 deletions(-)
+
+diff --git a/drivers/cpufreq/cpufreq_conservative.c b/drivers/cpufreq/cpufreq_conservative.c
+index 2ecd95e..a0cb963 100644
+--- a/drivers/cpufreq/cpufreq_conservative.c
++++ b/drivers/cpufreq/cpufreq_conservative.c
+@@ -42,27 +42,12 @@
+  * this governor will not work.
+  * All times here are in uS.
+  */
+-static unsigned int def_sampling_rate;
+ #define MIN_SAMPLING_RATE_RATIO			(2)
+-/* for correct statistics, we need at least 10 ticks between each measure */
+-#define MIN_STAT_SAMPLING_RATE 			\
+-			(MIN_SAMPLING_RATE_RATIO * jiffies_to_usecs(10))
+-#define MIN_SAMPLING_RATE			\
+-			(def_sampling_rate / MIN_SAMPLING_RATE_RATIO)
+-/* Above MIN_SAMPLING_RATE will vanish with its sysfs file soon
+- * Define the minimal settable sampling rate to the greater of:
+- *   - "HW transition latency" * 100 (same as default sampling / 10)
+- *   - MIN_STAT_SAMPLING_RATE
+- * To avoid that userspace shoots itself.
+-*/
+-static unsigned int minimum_sampling_rate(void)
+-{
+-	return max(def_sampling_rate / 10, MIN_STAT_SAMPLING_RATE);
+-}
+ 
+-/* This will also vanish soon with removing sampling_rate_max */
+-#define MAX_SAMPLING_RATE			(500 * def_sampling_rate)
++static unsigned int min_sampling_rate;
++
+ #define LATENCY_MULTIPLIER			(1000)
++#define MIN_LATENCY_MULTIPLIER			(100)
+ #define DEF_SAMPLING_DOWN_FACTOR		(1)
+ #define MAX_SAMPLING_DOWN_FACTOR		(10)
+ #define TRANSITION_LATENCY_LIMIT		(10 * 1000 * 1000)
+@@ -187,7 +172,7 @@ static ssize_t show_sampling_rate_max(struct cpufreq_policy *policy, char *buf)
+ 		       current->comm);
+ 		print_once = 1;
+ 	}
+-	return sprintf(buf, "%u\n", MAX_SAMPLING_RATE);
++	return sprintf(buf, "%u\n", -1U);
+ }
+ 
+ static ssize_t show_sampling_rate_min(struct cpufreq_policy *policy, char *buf)
+@@ -199,7 +184,7 @@ static ssize_t show_sampling_rate_min(struct cpufreq_policy *policy, char *buf)
+ 		       "sysfs file is deprecated - used by: %s\n", current->comm);
+ 		print_once = 1;
+ 	}
+-	return sprintf(buf, "%u\n", MIN_SAMPLING_RATE);
++	return sprintf(buf, "%u\n", min_sampling_rate);
+ }
+ 
+ #define define_one_ro(_name)		\
+@@ -251,7 +236,7 @@ static ssize_t store_sampling_rate(struct cpufreq_policy *unused,
+ 		return -EINVAL;
+ 
+ 	mutex_lock(&dbs_mutex);
+-	dbs_tuners_ins.sampling_rate = max(input, minimum_sampling_rate());
++	dbs_tuners_ins.sampling_rate = max(input, min_sampling_rate);
+ 	mutex_unlock(&dbs_mutex);
+ 
+ 	return count;
+@@ -598,11 +583,18 @@ static int cpufreq_governor_dbs(struct cpufreq_policy *policy,
+ 			if (latency == 0)
+ 				latency = 1;
+ 
+-			def_sampling_rate =
+-				max(latency * LATENCY_MULTIPLIER,
+-				    MIN_STAT_SAMPLING_RATE);
+-
+-			dbs_tuners_ins.sampling_rate = def_sampling_rate;
++			/*
++			 * conservative does not implement micro like ondemand
++			 * governor, thus we are bound to jiffes/HZ
++			 */
++			min_sampling_rate =
++				MIN_SAMPLING_RATE_RATIO * jiffies_to_usecs(10);
++			/* Bring kernel and HW constraints together */
++			min_sampling_rate = max(min_sampling_rate,
++					MIN_LATENCY_MULTIPLIER * latency);
++			dbs_tuners_ins.sampling_rate =
++				max(min_sampling_rate,
++				    latency * LATENCY_MULTIPLIER);
+ 
+ 			cpufreq_register_notifier(
+ 					&dbs_cpufreq_notifier_block,
+diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c
+index 338f428..737e081 100644
+--- a/drivers/cpufreq/cpufreq_ondemand.c
++++ b/drivers/cpufreq/cpufreq_ondemand.c
+@@ -32,6 +32,7 @@
+ #define DEF_FREQUENCY_UP_THRESHOLD		(80)
+ #define MICRO_FREQUENCY_DOWN_DIFFERENTIAL	(3)
+ #define MICRO_FREQUENCY_UP_THRESHOLD		(95)
++#define MICRO_FREQUENCY_MIN_SAMPLE_RATE		(10000)
+ #define MIN_FREQUENCY_UP_THRESHOLD		(11)
+ #define MAX_FREQUENCY_UP_THRESHOLD		(100)
+ 
+@@ -45,27 +46,12 @@
+  * this governor will not work.
+  * All times here are in uS.
+  */
+-static unsigned int def_sampling_rate;
+ #define MIN_SAMPLING_RATE_RATIO			(2)
+-/* for correct statistics, we need at least 10 ticks between each measure */
+-#define MIN_STAT_SAMPLING_RATE 			\
+-			(MIN_SAMPLING_RATE_RATIO * jiffies_to_usecs(10))
+-#define MIN_SAMPLING_RATE			\
+-			(def_sampling_rate / MIN_SAMPLING_RATE_RATIO)
+-/* Above MIN_SAMPLING_RATE will vanish with its sysfs file soon
+- * Define the minimal settable sampling rate to the greater of:
+- *   - "HW transition latency" * 100 (same as default sampling / 10)
+- *   - MIN_STAT_SAMPLING_RATE
+- * To avoid that userspace shoots itself.
+-*/
+-static unsigned int minimum_sampling_rate(void)
+-{
+-	return max(def_sampling_rate / 10, MIN_STAT_SAMPLING_RATE);
+-}
+ 
+-/* This will also vanish soon with removing sampling_rate_max */
+-#define MAX_SAMPLING_RATE			(500 * def_sampling_rate)
++static unsigned int min_sampling_rate;
++
+ #define LATENCY_MULTIPLIER			(1000)
++#define MIN_LATENCY_MULTIPLIER			(100)
+ #define TRANSITION_LATENCY_LIMIT		(10 * 1000 * 1000)
+ 
+ static void do_dbs_timer(struct work_struct *work);
+@@ -224,7 +210,7 @@ static ssize_t show_sampling_rate_max(struct cpufreq_policy *policy, char *buf)
+ 		       current->comm);
+ 		print_once = 1;
+ 	}
+-	return sprintf(buf, "%u\n", MAX_SAMPLING_RATE);
++	return sprintf(buf, "%u\n", -1U);
+ }
+ 
+ static ssize_t show_sampling_rate_min(struct cpufreq_policy *policy, char *buf)
+@@ -237,7 +223,7 @@ static ssize_t show_sampling_rate_min(struct cpufreq_policy *policy, char *buf)
+ 		       current->comm);
+ 		print_once = 1;
+ 	}
+-	return sprintf(buf, "%u\n", MIN_SAMPLING_RATE);
++	return sprintf(buf, "%u\n", min_sampling_rate);
+ }
+ 
+ #define define_one_ro(_name)		\
+@@ -271,7 +257,7 @@ static ssize_t store_sampling_rate(struct cpufreq_policy *unused,
+ 		mutex_unlock(&dbs_mutex);
+ 		return -EINVAL;
+ 	}
+-	dbs_tuners_ins.sampling_rate = max(input, minimum_sampling_rate());
++	dbs_tuners_ins.sampling_rate = max(input, min_sampling_rate);
+ 	mutex_unlock(&dbs_mutex);
+ 
+ 	return count;
+@@ -616,12 +602,12 @@ static int cpufreq_governor_dbs(struct cpufreq_policy *policy,
+ 			latency = policy->cpuinfo.transition_latency / 1000;
+ 			if (latency == 0)
+ 				latency = 1;
+-
+-			def_sampling_rate =
+-				max(latency * LATENCY_MULTIPLIER,
+-				    MIN_STAT_SAMPLING_RATE);
+-
+-			dbs_tuners_ins.sampling_rate = def_sampling_rate;
++			/* Bring kernel and HW constraints together */
++			min_sampling_rate = max(min_sampling_rate,
++					MIN_LATENCY_MULTIPLIER * latency);
++			dbs_tuners_ins.sampling_rate =
++				max(min_sampling_rate,
++				    latency * LATENCY_MULTIPLIER);
+ 		}
+ 		dbs_timer_init(this_dbs_info);
+ 
+@@ -675,6 +661,16 @@ static int __init cpufreq_gov_dbs_init(void)
+ 		dbs_tuners_ins.up_threshold = MICRO_FREQUENCY_UP_THRESHOLD;
+ 		dbs_tuners_ins.down_differential =
+ 					MICRO_FREQUENCY_DOWN_DIFFERENTIAL;
++		/*
++		 * In no_hz/micro accounting case we set the minimum frequency
++		 * not depending on HZ, but fixed (very low). The deferred
++		 * timer might skip some samples if idle/sleeping as needed.
++		*/
++		min_sampling_rate = MICRO_FREQUENCY_MIN_SAMPLE_RATE;
++	} else {
++		/* For correct statistics, we need 10 ticks for each measure */
++		min_sampling_rate =
++			MIN_SAMPLING_RATE_RATIO * jiffies_to_usecs(10);
+ 	}
+ 
+ 	kondemand_wq = create_workqueue("kondemand");
+-- 
+1.6.0.2
+
+From davej at redhat.com  Wed Apr 22 17:40:38 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n3MHdeDq017030
+	for <davej at kernel.org>; Wed, 22 Apr 2009 17:40:32 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n3MHdddn019299
+	for <davej at kernel.org>; Wed, 22 Apr 2009 13:39:39 -0400
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3MHddQp004735
+	for <davej at kernel.org>; Wed, 22 Apr 2009 13:39:39 -0400
+Received: from gelk.kernelslacker.org (vpn-10-7.bos.redhat.com [10.16.10.7])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n3MHdcSE022493
+	for <davej at kernel.org>; Wed, 22 Apr 2009 13:39:38 -0400
+Received: from gelk.kernelslacker.org (gelk.kernelslacker.org [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n3MHdac4026087
+	for <davej at kernel.org>; Wed, 22 Apr 2009 13:39:36 -0400
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n3MHdZ2H026086
+	for davej at kernel.org; Wed, 22 Apr 2009 13:39:35 -0400
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Wed, 22 Apr 2009 13:39:35 -0400
+Resent-Message-ID: <20090422173935.GA11680 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-7.0 required=5.0 tests=AWL,BAYES_00,
+	RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.51]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.9)
+	for <davej at localhost> (single-drop); Wed, 22 Apr 2009 12:09:47 -0400 (EDT)
+Received: from zmta03.collab.prod.int.phx2.redhat.com (LHLO
+ zmta03.collab.prod.int.phx2.redhat.com) (10.5.5.33) by
+ mail04.corp.redhat.com with LMTP; Wed, 22 Apr 2009 07:49:00 -0400 (EDT)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 290A94D270;
+	Wed, 22 Apr 2009 07:49:00 -0400 (EDT)
+Received: from zmta03.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta03.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id oC-eJ+V5ZrLO; Wed, 22 Apr 2009 07:49:00 -0400 (EDT)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta03.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id EA0B34D269;
+	Wed, 22 Apr 2009 07:48:59 -0400 (EDT)
+Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3MBmw6b030321;
+	Wed, 22 Apr 2009 07:48:58 -0400
+Received: from vger.kernel.org (vger.kernel.org [209.132.176.167])
+	by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n3MBmc2m003235;
+	Wed, 22 Apr 2009 07:48:39 -0400
+Received: (majordomo at vger.kernel.org) by vger.kernel.org via listexpand
+	id S1753268AbZDVLsg (ORCPT <rfc822;davej at redhat.com> + 1 other);
+	Wed, 22 Apr 2009 07:48:36 -0400
+Received: (majordomo at vger.kernel.org) by vger.kernel.org id S1753567AbZDVLsg
+	(ORCPT <rfc822;cpufreq-outgoing>); Wed, 22 Apr 2009 07:48:36 -0400
+Received: from cantor2.suse.de ([195.135.220.15]:39585 "EHLO mx2.suse.de"
+	rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP
+	id S1752895AbZDVLse (ORCPT <rfc822;cpufreq at vger.kernel.org>);
+	Wed, 22 Apr 2009 07:48:34 -0400
+Received: from Relay2.suse.de (mail2.suse.de [195.135.221.8])
+	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by mx2.suse.de (Postfix) with ESMTP id B3AB886391;
+	Wed, 22 Apr 2009 13:48:33 +0200 (CEST)
+From: Thomas Renninger <trenn at suse.de>
+To: davej at redhat.com
+Cc: cpufreq at vger.kernel.org, Thomas Renninger <trenn at suse.de>,
+        "Langsdorf, Mark" <mark.langsdorf at amd.com>
+Subject: [CPUFREQ] powernow-k8: Set transition latency to 1 if ACPI tables export 0
+Date: 	Wed, 22 Apr 2009 13:48:30 +0200
+Message-Id: <1240400913-8069-3-git-send-email-trenn at suse.de>
+In-Reply-To: <1240400913-8069-1-git-send-email-trenn at suse.de>
+References: <1240400913-8069-1-git-send-email-trenn at suse.de>
+Sender: cpufreq-owner at vger.kernel.org
+Precedence: bulk
+List-ID: <cpufreq.vger.kernel.org>
+X-Mailing-List: 	cpufreq at vger.kernel.org
+X-RedHat-Spam-Score: -3.937 
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Scanned-By: MIMEDefang 2.63 on 172.16.48.31
+X-Virus-Scanned: ClamAV 0.93.3/9273/Wed Apr 22 14:16:49 2009 on hera.kernel.org
+X-Virus-Status: Clean
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Wed, 22 Apr 2009 17:40:38 +0000 (UTC)
+Status: RO
+Content-Length: 1488
+Lines: 40
+
+This doesn't fix anything, but it's expected that a transition latency of 0
+could cause trouble in the future.
+
+Signed-off-by: Thomas Renninger <trenn at suse.de>
+Cc: Langsdorf, Mark <mark.langsdorf at amd.com>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ arch/x86/kernel/cpu/cpufreq/powernow-k8.c |   13 +++++++++++++
+ 1 files changed, 13 insertions(+), 0 deletions(-)
+
+diff --git a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
+index 4709ead..f023506 100644
+--- a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
++++ b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
+@@ -1026,6 +1026,19 @@ static int get_transition_latency(struct powernow_k8_data *data)
+ 		if (cur_latency > max_latency)
+ 			max_latency = cur_latency;
+ 	}
++	if (max_latency == 0) {
++		/*
++		 * Fam 11h always returns 0 as transition latency.
++		 * This is intended and means "very fast". While cpufreq core
++		 * and governors currently can handle that gracefully, better
++		 * set it to 1 to avoid problems in the future.
++		 * For all others it's a BIOS bug.
++		 */
++		if (!boot_cpu_data.x86 == 0x11)
++			printk(KERN_ERR FW_WARN PFX "Invalid zero transition "
++				"latency\n");
++		max_latency = 1;
++	}
+ 	/* value in usecs, needs to be in nanoseconds */
+ 	return 1000 * max_latency;
+ }
+-- 
+1.6.0.2
+
+--
+To unsubscribe from this list: send the line "unsubscribe cpufreq" in
+the body of a message to majordomo at vger.kernel.org
+More majordomo info at  http://vger.kernel.org/majordomo-info.html
+
+From davej at redhat.com  Thu Apr 23 03:03:16 2009
+Return-Path: <davej at redhat.com>
+Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31])
+	by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n3N32CE0005634
+	for <davej at kernel.org>; Thu, 23 Apr 2009 03:03:04 GMT
+Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
+	by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n3N32C2L021636
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:12 -0400
+Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199])
+	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3N32C6N031984
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:12 -0400
+Received: from gelk.kernelslacker.org (vpn-10-42.bos.redhat.com [10.16.10.42])
+	by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n3N3278D020892
+	for <davej at kernel.org>; Wed, 22 Apr 2009 23:02:11 -0400
+Received: from gelk.kernelslacker.org (gelk.kernelslacker.org [127.0.0.1])
+	by gelk.kernelslacker.org (8.14.3/8.14.3) with ESMTP id n3MNHqcj003695
+	for <davej at kernel.org>; Wed, 22 Apr 2009 19:19:11 -0400
+Received: (from davej at localhost)
+	by gelk.kernelslacker.org (8.14.3/8.14.3/Submit) id n3MNHWis003681
+	for davej at kernel.org; Wed, 22 Apr 2009 19:17:32 -0400
+X-Authentication-Warning: gelk.kernelslacker.org: davej set sender to davej at redhat.com using -f
+Resent-From: davej at redhat.com
+Resent-Date: Wed, 22 Apr 2009 19:17:32 -0400
+Resent-Message-ID: <20090422231732.GB27613 at redhat.com>
+Resent-To: davej at kernel.org
+X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-9.0 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,
+	UNPARSEABLE_RELAY autolearn=ham version=3.2.5
+Received: from mail.corp.redhat.com [10.5.5.51]
+	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.9)
+	for <davej at localhost> (single-drop); Wed, 22 Apr 2009 12:09:24 -0400 (EDT)
+Received: from zmta01.collab.prod.int.phx2.redhat.com (LHLO
+ zmta01.collab.prod.int.phx2.redhat.com) (10.5.5.31) by
+ mail04.corp.redhat.com with LMTP; Wed, 22 Apr 2009 07:48:49 -0400 (EDT)
+Received: from localhost (localhost.localdomain [127.0.0.1])
+	by zmta01.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id DB91E90878
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:49 -0400 (EDT)
+Received: from zmta01.collab.prod.int.phx2.redhat.com ([127.0.0.1])
+	by localhost (zmta01.collab.prod.int.phx2.redhat.com [127.0.0.1]) (amavisd-new, port 10024)
+	with ESMTP id 0J1VawOIpoHv for <davej at redhat.com>;
+	Wed, 22 Apr 2009 07:48:49 -0400 (EDT)
+Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
+	by zmta01.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 9A1D19086A
+	for <davej at mail.corp.redhat.com>; Wed, 22 Apr 2009 07:48:49 -0400 (EDT)
+Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
+	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n3MBmmHY030293
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:48 -0400
+Received: from mx1.suse.de (cantor.suse.de [195.135.220.2])
+	by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n3MBmXxA003140
+	for <davej at redhat.com>; Wed, 22 Apr 2009 07:48:33 -0400
+Received: from Relay1.suse.de (mail2.suse.de [195.135.221.8])
+	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
+	(No client certificate requested)
+	by mx1.suse.de (Postfix) with ESMTP id 783028D893;
+	Wed, 22 Apr 2009 13:48:33 +0200 (CEST)
+From: Thomas Renninger <trenn at suse.de>
+To: davej at redhat.com
+Cc: cpufreq at vger.kernel.org, Thomas Renninger <trenn at suse.de>
+Subject: [CPUFREQ] Only set sampling_rate_max deprecated, sampling_rate_min is useful
+Date: Wed, 22 Apr 2009 13:48:31 +0200
+Message-Id: <1240400913-8069-4-git-send-email-trenn at suse.de>
+In-Reply-To: <1240400913-8069-1-git-send-email-trenn at suse.de>
+References: <1240400913-8069-1-git-send-email-trenn at suse.de>
+X-RedHat-Spam-Score: -5.922 
+X-Scanned-By: MIMEDefang 2.58 on 172.16.27.26
+X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254
+X-Scanned-By: MIMEDefang 2.63 on 172.16.48.31
+X-Virus-Scanned: ClamAV 0.93.3/9276/Wed Apr 22 22:55:59 2009 on hera.kernel.org
+X-Virus-Status: Clean
+X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [140.211.167.34]); Thu, 23 Apr 2009 03:03:16 +0000 (UTC)
+Status: RO
+Content-Length: 5001
+Lines: 123
+
+Update the documentation accordingly.
+Cleanup and use printk_once.
+
+Signed-off-by: Thomas Renninger <trenn at suse.de>
+Signed-off-by: Dave Jones <davej at redhat.com>
+---
+ Documentation/cpu-freq/governors.txt   |   26 ++++++++++++++------------
+ drivers/cpufreq/cpufreq_conservative.c |   17 ++---------------
+ drivers/cpufreq/cpufreq_ondemand.c     |   18 ++----------------
+ 3 files changed, 18 insertions(+), 43 deletions(-)
+
+diff --git a/Documentation/cpu-freq/governors.txt b/Documentation/cpu-freq/governors.txt
+index ce73f3e..aed082f 100644
+--- a/Documentation/cpu-freq/governors.txt
++++ b/Documentation/cpu-freq/governors.txt
+@@ -119,10 +119,6 @@ want the kernel to look at the CPU usage and to make decisions on
+ what to do about the frequency.  Typically this is set to values of
+ around '10000' or more. It's default value is (cmp. with users-guide.txt):
+ transition_latency * 1000
+-The lowest value you can set is:
+-transition_latency * 100 or it may get restricted to a value where it
+-makes not sense for the kernel anymore to poll that often which depends
+-on your HZ config variable (HZ=1000: max=20000us, HZ=250: max=5000).
+ Be aware that transition latency is in ns and sampling_rate is in us, so you
+ get the same sysfs value by default.
+ Sampling rate should always get adjusted considering the transition latency
+@@ -131,14 +127,20 @@ in the bash (as said, 1000 is default), do:
+ echo `$(($(cat cpuinfo_transition_latency) * 750 / 1000)) \
+     >ondemand/sampling_rate
+ 
+-show_sampling_rate_(min|max): THIS INTERFACE IS DEPRECATED, DON'T USE IT.
+-You can use wider ranges now and the general
+-cpuinfo_transition_latency variable (cmp. with user-guide.txt) can be
+-used to obtain exactly the same info:
+-show_sampling_rate_min = transtition_latency * 500    / 1000
+-show_sampling_rate_max = transtition_latency * 500000 / 1000
+-(divided by 1000 is to illustrate that sampling rate is in us and
+-transition latency is exported ns).
++show_sampling_rate_min:
++The sampling rate is limited by the HW transition latency:
++transition_latency * 100
++Or by kernel restrictions:
++If CONFIG_NO_HZ is set, the limit is 10ms fixed.
++If CONFIG_NO_HZ is not set or no_hz=off boot parameter is used, the
++limits depend on the CONFIG_HZ option:
++HZ=1000: min=20000us  (20ms)
++HZ=250:  min=80000us  (80ms)
++HZ=100:  min=200000us (200ms)
++The highest value of kernel and HW latency restrictions is shown and
++used as the minimum sampling rate.
++
++show_sampling_rate_max: THIS INTERFACE IS DEPRECATED, DON'T USE IT.
+ 
+ up_threshold: defines what the average CPU usage between the samplings
+ of 'sampling_rate' needs to be for the kernel to make a decision on
+diff --git a/drivers/cpufreq/cpufreq_conservative.c b/drivers/cpufreq/cpufreq_conservative.c
+index a0cb963..021adb9 100644
+--- a/drivers/cpufreq/cpufreq_conservative.c
++++ b/drivers/cpufreq/cpufreq_conservative.c
+@@ -164,26 +164,13 @@ static struct notifier_block dbs_cpufreq_notifier_block = {
+ /************************** sysfs interface ************************/
+ static ssize_t show_sampling_rate_max(struct cpufreq_policy *policy, char *buf)
+ {
+-	static int print_once;
+-
+-	if (!print_once) {
+-		printk(KERN_INFO "CPUFREQ: conservative sampling_rate_max "
+-		       "sysfs file is deprecated - used by: %s\n",
+-		       current->comm);
+-		print_once = 1;
+-	}
++	printk_once(KERN_INFO "CPUFREQ: conservative sampling_rate_max "
++		    "sysfs file is deprecated - used by: %s\n", current->comm);
+ 	return sprintf(buf, "%u\n", -1U);
+ }
+ 
+ static ssize_t show_sampling_rate_min(struct cpufreq_policy *policy, char *buf)
+ {
+-	static int print_once;
+-
+-	if (!print_once) {
+-		printk(KERN_INFO "CPUFREQ: conservative sampling_rate_max "
+-		       "sysfs file is deprecated - used by: %s\n", current->comm);
+-		print_once = 1;
+-	}
+ 	return sprintf(buf, "%u\n", min_sampling_rate);
+ }
+ 
+diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c
+index 737e081..c5e90aa 100644
+--- a/drivers/cpufreq/cpufreq_ondemand.c
++++ b/drivers/cpufreq/cpufreq_ondemand.c
+@@ -202,27 +202,13 @@ static void ondemand_powersave_bias_init(void)
+ /************************** sysfs interface ************************/
+ static ssize_t show_sampling_rate_max(struct cpufreq_policy *policy, char *buf)
+ {
+-	static int print_once;
+-
+-	if (!print_once) {
+-		printk(KERN_INFO "CPUFREQ: ondemand sampling_rate_max "
+-		       "sysfs file is deprecated - used by: %s\n",
+-		       current->comm);
+-		print_once = 1;
+-	}
++	printk_once(KERN_INFO "CPUFREQ: ondemand sampling_rate_max "
++	       "sysfs file is deprecated - used by: %s\n", current->comm);
+ 	return sprintf(buf, "%u\n", -1U);
+ }
+ 
+ static ssize_t show_sampling_rate_min(struct cpufreq_policy *policy, char *buf)
+ {
+-	static int print_once;
+-
+-	if (!print_once) {
+-		printk(KERN_INFO "CPUFREQ: ondemand sampling_rate_min "
+-		       "sysfs file is deprecated - used by: %s\n",
+-		       current->comm);
+-		print_once = 1;
+-	}
+ 	return sprintf(buf, "%u\n", min_sampling_rate);
+ }
+ 
+-- 
+1.6.0.2
+


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.1552
retrieving revision 1.1553
diff -u -p -r1.1552 -r1.1553
--- kernel.spec	26 May 2009 16:23:04 -0000	1.1552
+++ kernel.spec	26 May 2009 16:25:44 -0000	1.1553
@@ -1066,7 +1066,7 @@ ApplyOptionalPatch linux-2.6-compile-fix
 # revert patches from upstream that conflict or that we get via other means
 ApplyOptionalPatch linux-2.6-upstream-reverts.patch -R
 
-#ApplyPatch git-cpufreq.patch
+ApplyPatch git-cpufreq.patch
 #ApplyPatch git-bluetooth.patch
 
 ApplyPatch linux-2.6-hotfixes.patch
@@ -1816,6 +1816,12 @@ fi
 #	                ||     ||
 %changelog
 * Tue May 26 2009 Dave Jones <davej at redhat.com>
+- Various cpufreq patches from git.
+
+* Tue May 26 2009 Dave Jones <davej at redhat.com
+- 2.6.30-rc7-git1
+
+* Tue May 26 2009 Dave Jones <davej at redhat.com>
 - 2.6.30-rc7-git1
 
 * Mon May 25 2009 Kyle McMartin <kyle at redhat.com>




More information about the scm-commits mailing list