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
- Previous message: rpms/rabbitmq-server/EL-5 import.log, NONE, 1.1 rabbitmq-script-wrapper, NONE, 1.1 rabbitmq-server.init, NONE, 1.1 rabbitmq-server.logrotate, NONE, 1.1 rabbitmq-server.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
- Next message: rpms/mediawiki-SpecialInterwiki/devel mediawiki-SpecialInterwiki.spec, 1.4, 1.5
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
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>
- Previous message: rpms/rabbitmq-server/EL-5 import.log, NONE, 1.1 rabbitmq-script-wrapper, NONE, 1.1 rabbitmq-server.init, NONE, 1.1 rabbitmq-server.logrotate, NONE, 1.1 rabbitmq-server.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
- Next message: rpms/mediawiki-SpecialInterwiki/devel mediawiki-SpecialInterwiki.spec, 1.4, 1.5
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list