From: Zhang Rui <rui.zhang@intel.com>
To: "maciej.rutecki@gmail.com" <maciej.rutecki@gmail.com>
Cc: linux-kernel <linux-kernel@vger.kernel.org>,
"linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org>,
"Brown, Len" <len.brown@intel.com>,
"Rafael J. Wysocki" <rjw@sisk.pl>
Subject: Re: [REGRESSION] [2.6.37-rc1] Fan noise after suspend to ram/disk
Date: Mon, 15 Nov 2010 11:16:35 +0800 [thread overview]
Message-ID: <1289790995.8148.1819.camel@rui> (raw)
In-Reply-To: <201011081835.05733.maciej.rutecki@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 9805 bytes --]
On Tue, 2010-11-09 at 01:35 +0800, Maciej Rutecki wrote:
> On poniedziałek, 8 listopada 2010 o 07:58:52 Zhang Rui wrote:
> > IMO, the only one that may cause this regression is commit
> > c57b62f5b1e6dd69ff8c96f6db7f86ea31c0e21f
> > some app may enable polling via procfs and update the thermal zone
> > status.
>
> I revert this commit from 2.6.37-rc1. Still the same:
could you please apply the patch attached, on top of 2.6.37-rc1, and
then attach the dmesg output if the fan is noise after suspend/resume.
thanks,
rui
> maciek@gumis:~$ grep . /sys/class/thermal/*/*
> /sys/class/thermal/cooling_device0/cur_state:0
> /sys/class/thermal/cooling_device0/max_state:10
> /sys/class/thermal/cooling_device0/type:LCD
> /sys/class/thermal/cooling_device1/cur_state:0
> /sys/class/thermal/cooling_device1/max_state:10
> /sys/class/thermal/cooling_device1/type:Processor
> /sys/class/thermal/cooling_device2/cur_state:0
> /sys/class/thermal/cooling_device2/max_state:10
> /sys/class/thermal/cooling_device2/type:Processor
> /sys/class/thermal/cooling_device3/cur_state:1
> /sys/class/thermal/cooling_device3/max_state:1
> /sys/class/thermal/cooling_device3/type:Fan
> /sys/class/thermal/cooling_device4/cur_state:1
> /sys/class/thermal/cooling_device4/max_state:1
> /sys/class/thermal/cooling_device4/type:Fan
> /sys/class/thermal/cooling_device5/cur_state:1
> /sys/class/thermal/cooling_device5/max_state:1
> /sys/class/thermal/cooling_device5/type:Fan
> /sys/class/thermal/cooling_device6/cur_state:1
> /sys/class/thermal/cooling_device6/max_state:1
> /sys/class/thermal/cooling_device6/type:Fan
> /sys/class/thermal/thermal_zone0/cdev0_trip_point:1
> /sys/class/thermal/thermal_zone0/cdev1_trip_point:2
> /sys/class/thermal/thermal_zone0/cdev2_trip_point:3
> /sys/class/thermal/thermal_zone0/cdev3_trip_point:4
> /sys/class/thermal/thermal_zone0/mode:enabled
> /sys/class/thermal/thermal_zone0/passive:0
> /sys/class/thermal/thermal_zone0/temp:37000
> /sys/class/thermal/thermal_zone0/trip_point_0_temp:256000
> /sys/class/thermal/thermal_zone0/trip_point_0_type:critical
> /sys/class/thermal/thermal_zone0/trip_point_1_temp:78000
> /sys/class/thermal/thermal_zone0/trip_point_1_type:active
> /sys/class/thermal/thermal_zone0/trip_point_2_temp:70000
> /sys/class/thermal/thermal_zone0/trip_point_2_type:active
> /sys/class/thermal/thermal_zone0/trip_point_3_temp:60000
> /sys/class/thermal/thermal_zone0/trip_point_3_type:active
> /sys/class/thermal/thermal_zone0/trip_point_4_temp:50000
> /sys/class/thermal/thermal_zone0/trip_point_4_type:active
> /sys/class/thermal/thermal_zone0/type:acpitz
> /sys/class/thermal/thermal_zone1/cdev0_trip_point:1
> /sys/class/thermal/thermal_zone1/cdev1_trip_point:1
> /sys/class/thermal/thermal_zone1/mode:enabled
> /sys/class/thermal/thermal_zone1/temp:36000
> /sys/class/thermal/thermal_zone1/trip_point_0_temp:90000
> /sys/class/thermal/thermal_zone1/trip_point_0_type:critical
> /sys/class/thermal/thermal_zone1/trip_point_1_temp:87000
> /sys/class/thermal/thermal_zone1/trip_point_1_type:passive
> /sys/class/thermal/thermal_zone1/type:acpitz
> /sys/class/thermal/thermal_zone2/mode:enabled
> /sys/class/thermal/thermal_zone2/passive:0
> /sys/class/thermal/thermal_zone2/temp:33000
> /sys/class/thermal/thermal_zone2/trip_point_0_temp:105000
> /sys/class/thermal/thermal_zone2/trip_point_0_type:critical
> /sys/class/thermal/thermal_zone2/type:acpitz
> /sys/class/thermal/thermal_zone3/cdev0_trip_point:1
> /sys/class/thermal/thermal_zone3/cdev1_trip_point:1
> /sys/class/thermal/thermal_zone3/mode:enabled
> /sys/class/thermal/thermal_zone3/temp:30800
> /sys/class/thermal/thermal_zone3/trip_point_0_temp:90000
> /sys/class/thermal/thermal_zone3/trip_point_0_type:critical
> /sys/class/thermal/thermal_zone3/trip_point_1_temp:60000
> /sys/class/thermal/thermal_zone3/trip_point_1_type:passive
> /sys/class/thermal/thermal_zone3/type:acpitz
> /sys/class/thermal/thermal_zone4/mode:enabled
> /sys/class/thermal/thermal_zone4/passive:0
> /sys/class/thermal/thermal_zone4/temp:100000
> /sys/class/thermal/thermal_zone4/trip_point_0_temp:110000
> /sys/class/thermal/thermal_zone4/trip_point_0_type:critical
> /sys/class/thermal/thermal_zone4/type:acpitz
>
> maciek@gumis:~$ grep . /proc/acpi/thermal_zone/*/*
> /proc/acpi/thermal_zone/TZ0/cooling_mode:<setting not supported>
> /proc/acpi/thermal_zone/TZ0/polling_frequency:<polling disabled>
> /proc/acpi/thermal_zone/TZ0/state:state: active[0]
> /proc/acpi/thermal_zone/TZ0/temperature:temperature: 37 C
> /proc/acpi/thermal_zone/TZ0/trip_points:critical (S5): 256 C
> /proc/acpi/thermal_zone/TZ0/trip_points:passive (forced):<not set>
> /proc/acpi/thermal_zone/TZ0/trip_points:active[0]: 78 C:
> devices=C325
> /proc/acpi/thermal_zone/TZ0/trip_points:active[1]: 70 C:
> devices=C326
> /proc/acpi/thermal_zone/TZ0/trip_points:active[2]: 60 C:
> devices=C327
> /proc/acpi/thermal_zone/TZ0/trip_points:active[3]: 50 C:
> devices=C328
> /proc/acpi/thermal_zone/TZ1/cooling_mode:<setting not supported>
> /proc/acpi/thermal_zone/TZ1/polling_frequency:<polling disabled>
> /proc/acpi/thermal_zone/TZ1/state:state: ok
> /proc/acpi/thermal_zone/TZ1/temperature:temperature: 35 C
> /proc/acpi/thermal_zone/TZ1/trip_points:critical (S5): 90 C
> /proc/acpi/thermal_zone/TZ1/trip_points:passive: 87 C: tc1=1
> tc2=2 tsp=300 devices=CPU0 CPU1
> /proc/acpi/thermal_zone/TZ2/cooling_mode:<setting not supported>
> /proc/acpi/thermal_zone/TZ2/polling_frequency:<polling disabled>
> /proc/acpi/thermal_zone/TZ2/state:state: ok
> /proc/acpi/thermal_zone/TZ2/temperature:temperature: 33 C
> /proc/acpi/thermal_zone/TZ2/trip_points:critical (S5): 105 C
> /proc/acpi/thermal_zone/TZ2/trip_points:passive (forced):<not set>
> /proc/acpi/thermal_zone/TZ3/cooling_mode:<setting not supported>
> /proc/acpi/thermal_zone/TZ3/polling_frequency:<polling disabled>
> /proc/acpi/thermal_zone/TZ3/state:state: ok
> /proc/acpi/thermal_zone/TZ3/temperature:temperature: 31 C
> /proc/acpi/thermal_zone/TZ3/trip_points:critical (S5): 90 C
> /proc/acpi/thermal_zone/TZ3/trip_points:passive: 60 C: tc1=1
> tc2=2 tsp=300 devices=CPU0 CPU1
> /proc/acpi/thermal_zone/TZ4/cooling_mode:<setting not supported>
> /proc/acpi/thermal_zone/TZ4/polling_frequency:<polling disabled>
> /proc/acpi/thermal_zone/TZ4/state:state: ok
> /proc/acpi/thermal_zone/TZ4/temperature:temperature: 100 C
> /proc/acpi/thermal_zone/TZ4/trip_points:critical (S5): 110 C
> /proc/acpi/thermal_zone/TZ4/trip_points:passive (forced):<not set>
>
> >
> > could you please attach the output of "grep . /proc/acpi/thermal/*/*" in
> > 2.6.36 kernel?
> >
> 2.6.36 after suspend to ram (CPU temp was above 1st trip point):
>
> maciek@gumis:~$ grep . /proc/acpi/fan/*/*
> /proc/acpi/fan/C325/state:status: off
> /proc/acpi/fan/C326/state:status: off
> /proc/acpi/fan/C327/state:status: off
> /proc/acpi/fan/C328/state:status: on
>
> maciek@gumis:~$ grep . /proc/acpi/thermal_zone/*/*
> /proc/acpi/thermal_zone/TZ0/cooling_mode:<setting not supported>
> /proc/acpi/thermal_zone/TZ0/polling_frequency:<polling disabled>
> /proc/acpi/thermal_zone/TZ0/state:state: active[0]
> /proc/acpi/thermal_zone/TZ0/temperature:temperature: 50 C
> /proc/acpi/thermal_zone/TZ0/trip_points:critical (S5): 256 C
> /proc/acpi/thermal_zone/TZ0/trip_points:passive (forced):<not set>
> /proc/acpi/thermal_zone/TZ0/trip_points:active[0]: 78 C:
> devices=C325
> /proc/acpi/thermal_zone/TZ0/trip_points:active[1]: 70 C:
> devices=C326
> /proc/acpi/thermal_zone/TZ0/trip_points:active[2]: 60 C:
> devices=C327
> /proc/acpi/thermal_zone/TZ0/trip_points:active[3]: 45 C:
> devices=C328
> /proc/acpi/thermal_zone/TZ1/cooling_mode:<setting not supported>
> /proc/acpi/thermal_zone/TZ1/polling_frequency:<polling disabled>
> /proc/acpi/thermal_zone/TZ1/state:state: ok
> /proc/acpi/thermal_zone/TZ1/temperature:temperature: 47 C
> /proc/acpi/thermal_zone/TZ1/trip_points:critical (S5): 90 C
> /proc/acpi/thermal_zone/TZ1/trip_points:passive: 87 C: tc1=1
> tc2=2 tsp=300 devices=CPU0 CPU1
> /proc/acpi/thermal_zone/TZ2/cooling_mode:<setting not supported>
> /proc/acpi/thermal_zone/TZ2/polling_frequency:<polling disabled>
> /proc/acpi/thermal_zone/TZ2/state:state: ok
> /proc/acpi/thermal_zone/TZ2/temperature:temperature: 40 C
> /proc/acpi/thermal_zone/TZ2/trip_points:critical (S5): 105 C
> /proc/acpi/thermal_zone/TZ2/trip_points:passive (forced):<not set>
> /proc/acpi/thermal_zone/TZ3/cooling_mode:<setting not supported>
> /proc/acpi/thermal_zone/TZ3/polling_frequency:<polling disabled>
> /proc/acpi/thermal_zone/TZ3/state:state: ok
> /proc/acpi/thermal_zone/TZ3/temperature:temperature: 28 C
> /proc/acpi/thermal_zone/TZ3/trip_points:critical (S5): 90 C
> /proc/acpi/thermal_zone/TZ3/trip_points:passive: 60 C: tc1=1
> tc2=2 tsp=300 devices=CPU0 CPU1
> /proc/acpi/thermal_zone/TZ4/cooling_mode:<setting not supported>
> /proc/acpi/thermal_zone/TZ4/polling_frequency:<polling disabled>
> /proc/acpi/thermal_zone/TZ4/state:state: ok
> /proc/acpi/thermal_zone/TZ4/temperature:temperature: 40 C
> /proc/acpi/thermal_zone/TZ4/trip_points:critical (S5): 110 C
> /proc/acpi/thermal_zone/TZ4/trip_points:passive (forced):<not set>
>
> Regards
[-- Attachment #2: patch-thermal-regression-debug --]
[-- Type: text/x-vhdl, Size: 878 bytes --]
---
drivers/thermal/thermal_sys.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
Index: linux-2.6/drivers/thermal/thermal_sys.c
===================================================================
--- linux-2.6.orig/drivers/thermal/thermal_sys.c
+++ linux-2.6/drivers/thermal/thermal_sys.c
@@ -966,6 +966,8 @@ void thermal_zone_device_update(struct t
"%d\n", tz->id);
goto leave;
}
+ printk("Rui: Current temperature: %d\n", temp);
+ dump_stack();
for (count = 0; count < tz->trips; count++) {
tz->ops->get_trip_type(tz, count, &trip_type);
@@ -997,7 +999,7 @@ void thermal_zone_device_update(struct t
continue;
cdev = instance->cdev;
-
+ printk("Rui: Active : cdev %s%d, temperature %lu, trip_temp %lu\n", cdev->type, cdev->id, temp, trip_temp);
if (temp >= trip_temp)
cdev->ops->set_cur_state(cdev, 1);
else
next prev parent reply other threads:[~2010-11-15 3:15 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-04 16:06 [REGRESSION] [2.6.37-rc1] Fan noise after suspend to ram/disk Maciej Rutecki
2010-11-05 0:27 ` Zhang Rui
2010-11-05 19:49 ` Maciej Rutecki
2010-11-08 6:58 ` Zhang Rui
2010-11-08 17:35 ` Maciej Rutecki
2010-11-15 3:16 ` Zhang Rui [this message]
[not found] ` <201011152139.46261.maciej.rutecki@gmail.com>
2010-11-16 1:26 ` Zhang Rui
2010-11-16 15:46 ` Maciej Rutecki
2010-11-16 17:31 ` Maciej Rutecki
2010-11-16 19:28 ` Maciej Rutecki
2010-11-16 22:35 ` Rafael J. Wysocki
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=1289790995.8148.1819.camel@rui \
--to=rui.zhang@intel.com \
--cc=len.brown@intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maciej.rutecki@gmail.com \
--cc=rjw@sisk.pl \
/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