public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* MCP limit log messages, 2.6.36-rc4
@ 2010-09-15 17:47 Tim Gardner
  2010-09-15 19:20 ` Tim Gardner
  2010-09-23 20:48 ` Jesse Barnes
  0 siblings, 2 replies; 9+ messages in thread
From: Tim Gardner @ 2010-09-15 17:47 UTC (permalink / raw)
  To: jbarnes; +Cc: linux-kernel@vger.kernel.org

[-- Attachment #1: Type: text/plain, Size: 755 bytes --]

I've been getting regular MCP limit log messages on a Dell Studio 1458 
(i5 CPU) with an A02 BIOS. With the attached debug hack it prints the 
following values:

[   33.605098] intel ips 0000:00:1f.6: MCP limit exceeded: Avg power 
30123, limit 1023
[   38.597998] intel ips 0000:00:1f.6: MCP limit exceeded: Avg power 
21697, limit 1023
[   43.590917] intel ips 0000:00:1f.6: MCP limit exceeded: Avg power 
15390, limit 1023
[   48.583821] intel ips 0000:00:1f.6: MCP limit exceeded: Avg power 
43370, limit 1023
[   53.576740] intel ips 0000:00:1f.6: MCP limit exceeded: Avg power 
64728, limit 1023

This is an idle machine which starts printing these messages about 30 
seconds after boot. Any thoughts?

rtg
-- 
Tim Gardner tim.gardner@canonical.com

[-- Attachment #2: 0001-intel_ips-Print-overage-values.patch --]
[-- Type: text/x-patch, Size: 1630 bytes --]

>From 89d9d47cc85a7a692f7f5e56549438086c36cc98 Mon Sep 17 00:00:00 2001
From: Tim Gardner <tim.gardner@canonical.com>
Date: Wed, 15 Sep 2010 09:35:35 -0600
Subject: [PATCH] intel_ips: Print overage values

Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
---
 drivers/platform/x86/intel_ips.c |   26 ++++++++++++++++++++------
 1 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/drivers/platform/x86/intel_ips.c b/drivers/platform/x86/intel_ips.c
index 9024480..4b8e6e2 100644
--- a/drivers/platform/x86/intel_ips.c
+++ b/drivers/platform/x86/intel_ips.c
@@ -598,17 +598,31 @@ static bool mcp_exceeded(struct ips_driver *ips)
 {
 	unsigned long flags;
 	bool ret = false;
+	u32 temp_limit;
+	u32 avg_power;
+	const char *msg = "MCP limit exceeded: ";
 
 	spin_lock_irqsave(&ips->turbo_status_lock, flags);
-	if (ips->mcp_avg_temp > (ips->mcp_temp_limit * 100))
-		ret = true;
-	if (ips->cpu_avg_power + ips->mch_avg_power > ips->mcp_power_limit)
+
+	temp_limit = ips->mcp_temp_limit;
+	temp_limit *= 100;
+	if (ips->mcp_avg_temp > temp_limit) {
+		dev_info(&ips->dev->dev,
+			"%sAvg temp %u, limit %u\n", msg, ips->mcp_avg_temp,
+			temp_limit);
 		ret = true;
-	spin_unlock_irqrestore(&ips->turbo_status_lock, flags);
+	}
 
-	if (ret)
+	avg_power = ips->cpu_avg_power;
+	avg_power += ips->mch_avg_power;
+	if (avg_power > ips->mcp_power_limit) {
 		dev_info(&ips->dev->dev,
-			 "MCP power or thermal limit exceeded\n");
+			"%sAvg power %u, limit %u\n", msg, avg_power,
+			ips->mcp_power_limit);
+		ret = true;
+	}
+
+	spin_unlock_irqrestore(&ips->turbo_status_lock, flags);
 
 	return ret;
 }
-- 
1.7.0.4


^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2010-09-28 17:18 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-15 17:47 MCP limit log messages, 2.6.36-rc4 Tim Gardner
2010-09-15 19:20 ` Tim Gardner
2010-09-16 12:49   ` Jesse Barnes
2010-09-23 20:48 ` Jesse Barnes
2010-09-23 21:54   ` Jesse Barnes
2010-09-23 22:46     ` Tim Gardner
2010-09-24 16:18       ` Jesse Barnes
2010-09-28 16:34         ` Tim Gardner
2010-09-28 17:18           ` Jesse Barnes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox