From: Frans Pop <elendil@planet.nl>
To: linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: Frans Pop <elendil@planet.nl>, Matthew Garrett <mjg@redhat.com>,
Zhang Rui <rui.zhang@intel.com>
Subject: [PATCH 4/6] thermal: add sanity check for the passive attribute
Date: Wed, 26 Aug 2009 18:17:23 +0200 [thread overview]
Message-ID: <1251303445-25317-5-git-send-email-elendil@planet.nl> (raw)
In-Reply-To: <1251303445-25317-1-git-send-email-elendil@planet.nl>
Values below 40000 milli-celsius (limit is somewhat arbitrary)
don't make sense and can cause the system to go into a thermal
heart attack: the actual temperature will always be lower and
thus the system will be throttled down to its lowest setting.
For values below 1000 an additional problem is that they would
show as 0 in /proc/acpi/thermal/TZx/trip_points:passive.
cat passive
0
echo -n 90000 >passive
cat passive
90000
echo -n 30000 >passive
bash: echo: write error: Invalid argument
Signed-off-by: Frans Pop <elendil@planet.nl>
Cc: Matthew Garrett <mjg@redhat.com>
Cc: Zhang Rui <rui.zhang@intel.com>
diff --git a/Documentation/thermal/sysfs-api.txt b/Documentation/thermal/sysfs-api.txt
index 2a036eb..09d5c88 100644
--- a/Documentation/thermal/sysfs-api.txt
+++ b/Documentation/thermal/sysfs-api.txt
@@ -206,6 +206,7 @@ passive
point for the zone. Activation is done by polling with an interval
of 1 second.
Unit: millidegrees Celsius
+ Minimum value: 40000
RW, Optional
*****************************
diff --git a/drivers/thermal/thermal_sys.c b/drivers/thermal/thermal_sys.c
index 0a69672..2d13d0d 100644
--- a/drivers/thermal/thermal_sys.c
+++ b/drivers/thermal/thermal_sys.c
@@ -225,6 +225,12 @@ passive_store(struct device *dev, struct device_attribute *attr,
if (!sscanf(buf, "%d\n", &state))
return -EINVAL;
+ /* sanity check: values below 40000 millicelcius don't make sense
+ * and can cause the system to go into a thermal heart attack
+ */
+ if (state && state < 40000)
+ return -EINVAL;
+
if (state && !tz->forced_passive) {
mutex_lock(&thermal_list_lock);
list_for_each_entry(cdev, &thermal_cdev_list, node) {
next prev parent reply other threads:[~2009-08-26 16:17 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-26 16:17 [PATCH 0/6] thermal: improvements re. forced passive cooling Frans Pop
2009-08-26 16:17 ` [PATCH 1/6] thermal: sysfs-api.txt - reformat for improved readability Frans Pop
2009-08-26 16:17 ` [PATCH 2/6] thermal: sysfs-api.txt - document passive attribute for thermal zones Frans Pop
2009-08-31 8:18 ` Zhang Rui
2009-08-31 11:19 ` Frans Pop
2009-09-01 0:44 ` Zhang Rui
2009-09-02 20:02 ` Pavel Machek
2009-09-03 14:34 ` Frans Pop
2009-08-26 16:17 ` [PATCH 3/6] acpi: thermal: display forced passive trip points in proc Frans Pop
2009-08-31 8:20 ` Zhang Rui
2009-08-26 16:17 ` Frans Pop [this message]
2009-08-26 16:23 ` [PATCH 4/6] thermal: add sanity check for the passive attribute Matthew Garrett
2009-08-26 16:48 ` Frans Pop
2009-08-31 8:33 ` Zhang Rui
2009-08-31 10:30 ` Frans Pop
2009-09-03 6:10 ` Zhang Rui
2009-09-03 14:33 ` [PATCH 4/6,v2] " Frans Pop
2009-08-26 16:17 ` [PATCH 5/6] thermal: Only set passive_delay for forced passive cooling Frans Pop
2009-08-26 16:25 ` Matthew Garrett
2009-09-10 16:07 ` Frans Pop
2009-09-10 16:15 ` Matthew Garrett
2009-08-26 16:17 ` [PATCH 6/6] thermal: disable polling if passive_delay and polling_delay are both unset Frans Pop
2009-08-26 16:25 ` Matthew Garrett
2009-10-26 7:38 [PATCH 0/6] [resend] thermal: improvements re. forced passive cooling Frans Pop
2009-10-26 7:39 ` [PATCH 4/6] thermal: add sanity check for the passive attribute Frans Pop
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=1251303445-25317-5-git-send-email-elendil@planet.nl \
--to=elendil@planet.nl \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mjg@redhat.com \
--cc=rui.zhang@intel.com \
/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
all inboxes | Powered by JetHome®