From: Jesse Barnes <jbarnes@virtuousgeek.org>
To: Cesar Eduardo Barros <cesarb@cesarb.net>
Cc: Henrique de Moraes Holschuh <hmh@hmh.eng.br>,
Joe Perches <joe@perches.com>, Matthew Garrett <mjg@redhat.com>,
platform-driver-x86@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] intel_ips: quieten "power or thermal limit exceeded" messages
Date: Mon, 30 Aug 2010 09:29:58 -0700 [thread overview]
Message-ID: <20100830092958.1c50c8cb@jbarnes-desktop> (raw)
In-Reply-To: <4C795E5C.1080506@cesarb.net>
On Sat, 28 Aug 2010 16:07:08 -0300
Cesar Eduardo Barros <cesarb@cesarb.net> wrote:
> Em 28-08-2010 12:23, Henrique de Moraes Holschuh escreveu:
> > On Sat, 28 Aug 2010, Cesar Eduardo Barros wrote:
> >> The solution here probably is not less logging. The best solution
> >> IMO would be to do some sanity checking when loading the module, and
> >> if the values do not make sense, print something to the log and
> >> return -ENODEV.
> >
> > As long as your sanity checking won't make the module fail to load in the
> > following scenario:
> >
> > 1. environment temperature control fails, room starts to heat up
> > 2. things go south, server reboots due to exceeded temperature limits
> > 3. OS boots in an overheat situation
> > 4. module refuse to load because it expects to never start in a overheating
> > situation.
> >
> > If the sanity checks will cause (4), then don't add them. rate-limit the
> > thermal alarms (issue them only once every T, and only if temperature has
> > increased more than, say, 5°C from the last alarm).
>
> I have not read the datasheet (I do not even know if it is available to
> the public; I have not looked), but I would not expect to see a power
> limit of 0 even if the CPU is on fire. Of course, you have to be more
> cautious when validating the current temperature (and even then, if it
> says the CPU is encased in a block of ice, something odd is going on).
>
> > If a given platform is buggy crap (or just el-cheapo trash that overheats
> > all the time) to the point that the module is useless, blacklist it by DMI
> > and inform the user.
> >
> >> I expect that, when it works as it should, the first read while
> >> loading the module already returns sane values, so a sanity check
> >
> > well, as long as "sane" does include server-is-too-hot situations...
>
> Of course. (But you most probably will want to s/server/laptop/ here.)
>
> >> there should not have many false positives. OTOH, it is best to not
> >> load the module when you think things are strange.
> >
> > What good is an alarm module that refuses to load when there is an alarm
> > condition happening already?
>
> This is not an alarm module; AFAIK it is a module for the feature in
> recent Intel CPU/GPU chips which allow you to overclock it a bit as long
> as the thermal and power limit has not been exceeded:
>
> config INTEL_IPS
> tristate "Intel Intelligent Power Sharing"
> depends on ACPI
> ---help---
> Intel Calpella platforms support dynamic power sharing between the
> CPU and GPU, maximizing performance in a given TDP. This driver,
> along with the CPU frequency and i915 drivers, provides that
> functionality. If in doubt, say Y here; it will only load on
> supported platforms.
>
> If the module is not loaded, it simply will not be able to go above its
> nominal clock, so refusing to load it is not that much of a problem.
It sounds like either your BIOS values are wrong or the driver isn't
fetching them correctly on your platform.
It's possible that the main issue here is bad thermal limits. There's
obviously a relationship between power and thermal output, but the
driver tries to monitor both. However it's up to the BIOS to provide
the driver with accurate thermal limits, as well as accurate power
limits. The power limits sound reasonable at 25W, thus the
informational output about 35W vs 25W (35W is what the MCP can handle,
but some platforms are designed to handle less, so they clamp it down a
bit). But the temp limits look all wrong. I'll see if I can find info
on getting better data into the driver...
Thanks,
--
Jesse Barnes, Intel Open Source Technology Center
next prev parent reply other threads:[~2010-08-30 16:30 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-25 0:48 intel ips: CPU TDP doesn't match expected value Cesar Eduardo Barros
2010-08-25 1:37 ` Jesse Barnes
2010-08-26 23:29 ` [PATCH] intel_ips: quieten "power or thermal limit exceeded" messages Cesar Eduardo Barros
2010-08-26 23:33 ` Joe Perches
2010-08-27 0:11 ` Cesar Eduardo Barros
2010-08-27 0:41 ` Joe Perches
2010-08-27 1:38 ` Cesar Eduardo Barros
2010-08-27 7:39 ` Joe Perches
2010-08-27 23:12 ` Cesar Eduardo Barros
2010-08-28 2:21 ` Joe Perches
2010-08-28 10:46 ` Cesar Eduardo Barros
[not found] ` <1282994116.1946.226.camel@Joe-Laptop>
2010-08-28 12:52 ` Cesar Eduardo Barros
2010-08-28 13:01 ` Cesar Eduardo Barros
2010-08-28 13:29 ` Joe Perches
2010-08-28 14:18 ` Cesar Eduardo Barros
2010-08-28 15:23 ` Henrique de Moraes Holschuh
2010-08-28 19:07 ` Cesar Eduardo Barros
2010-08-30 16:29 ` Jesse Barnes [this message]
2010-08-30 21:42 ` Cesar Eduardo Barros
2010-09-23 20:31 ` Jesse Barnes
2010-09-23 20:47 ` Joe Perches
2010-09-23 20:50 ` Jesse Barnes
2010-08-27 0:18 ` Alan Cox
2010-08-27 0:22 ` Cesar Eduardo Barros
2010-08-27 1:42 ` Matthew Garrett
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100830092958.1c50c8cb@jbarnes-desktop \
--to=jbarnes@virtuousgeek.org \
--cc=cesarb@cesarb.net \
--cc=hmh@hmh.eng.br \
--cc=joe@perches.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mjg@redhat.com \
--cc=platform-driver-x86@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox