Linux v4.5-12330-ge46b4e2b46e1
- trace, thermal, nfsd merges
This commit is contained in:
		
							parent
							
								
									6a44257de7
								
							
						
					
					
						commit
						7acc192a3c
					
				
							
								
								
									
										2
									
								
								gitrev
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								gitrev
									
									
									
									
									
								
							| @ -1 +1 @@ | ||||
| 8b97be054572fc769619184dcc174e280a5c851c | ||||
| e46b4e2b46e173889b19999b8bd033d5e8b3acf0 | ||||
|  | ||||
| @ -69,7 +69,7 @@ Summary: The Linux kernel | ||||
| # The rc snapshot level | ||||
| %define rcrev 0 | ||||
| # The git snapshot level | ||||
| %define gitrev 24 | ||||
| %define gitrev 25 | ||||
| # Set rpm version accordingly | ||||
| %define rpmversion 4.%{upstream_sublevel}.0 | ||||
| %endif | ||||
| @ -628,9 +628,6 @@ Patch678: ims-pcu-sanity-check-against-missing-interfaces.patch | ||||
| #rhbz 1315013 | ||||
| Patch683: 0001-uas-Limit-qdepth-at-the-scsi-host-level.patch | ||||
| 
 | ||||
| #rhbz 1317190 | ||||
| Patch684: thermal-fix.patch | ||||
| 
 | ||||
| #rhbz 1318079 | ||||
| Patch685: 0001-Input-synaptics-handle-spurious-release-of-trackstic.patch | ||||
| 
 | ||||
| @ -2162,6 +2159,10 @@ fi | ||||
| # | ||||
| #  | ||||
| %changelog | ||||
| * Thu Mar 24 2016 Josh Boyer <jwboyer@fedoraproject.org> - 4.6.0-0.rc0.git25.1 | ||||
| - Linux v4.5-12330-ge46b4e2b46e1 | ||||
| - trace, thermal, nfsd merges | ||||
| 
 | ||||
| * Thu Mar 24 2016 Josh Boyer <jwboyer@fedoraproject.org> - 4.6.0-0.rc0.git24.1 | ||||
| - Linux v4.5-12257-g8b97be054572 | ||||
| - staging, timers, perf, irq, x86, sched, locking merges | ||||
|  | ||||
							
								
								
									
										2
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								sources
									
									
									
									
									
								
							| @ -1,3 +1,3 @@ | ||||
| a60d48eee08ec0536d5efb17ca819aef  linux-4.5.tar.xz | ||||
| 6f557fe90b800b615c85c2ca04da6154  perf-man-4.5.tar.gz | ||||
| 2fa0353a02b97c54626e54d130a098bf  patch-4.5-git24.xz | ||||
| 573ece27cbf9ecd41037469878838473  patch-4.5-git25.xz | ||||
|  | ||||
| @ -1,77 +0,0 @@ | ||||
| From 81ad4276b505e987dd8ebbdf63605f92cd172b52 Mon Sep 17 00:00:00 2001 | ||||
| From: Zhang Rui <rui.zhang@intel.com> | ||||
| Date: Fri, 18 Mar 2016 10:03:24 +0800 | ||||
| Subject: [PATCH] Thermal: Ignore invalid trip points | ||||
| 
 | ||||
| In some cases, platform thermal driver may report invalid trip points, | ||||
| thermal core should not take any action for these trip points. | ||||
| 
 | ||||
| CC: <stable@vger.kernel.org> #3.18+ | ||||
| Link: https://bugzilla.redhat.com/show_bug.cgi?id=1317190 | ||||
| Link: https://bugzilla.kernel.org/show_bug.cgi?id=114551 | ||||
| Signed-off-by: Zhang Rui <rui.zhang@intel.com> | ||||
| ---
 | ||||
|  drivers/thermal/thermal_core.c | 13 ++++++++++++- | ||||
|  include/linux/thermal.h        |  2 ++ | ||||
|  2 files changed, 14 insertions(+), 1 deletion(-) | ||||
| 
 | ||||
| diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c
 | ||||
| index a0a8fd1..d4b5465 100644
 | ||||
| --- a/drivers/thermal/thermal_core.c
 | ||||
| +++ b/drivers/thermal/thermal_core.c
 | ||||
| @@ -454,6 +454,10 @@ static void handle_thermal_trip(struct thermal_zone_device *tz, int trip)
 | ||||
|  { | ||||
|  	enum thermal_trip_type type; | ||||
|   | ||||
| +	/* Ignore disabled trip points */
 | ||||
| +	if (test_bit(trip, &tz->trips_disabled))
 | ||||
| +		return;
 | ||||
| +
 | ||||
|  	tz->ops->get_trip_type(tz, trip, &type); | ||||
|   | ||||
|  	if (type == THERMAL_TRIP_CRITICAL || type == THERMAL_TRIP_HOT) | ||||
| @@ -1800,6 +1804,7 @@ struct thermal_zone_device *thermal_zone_device_register(const char *type,
 | ||||
|  { | ||||
|  	struct thermal_zone_device *tz; | ||||
|  	enum thermal_trip_type trip_type; | ||||
| +	int trip_temp;
 | ||||
|  	int result; | ||||
|  	int count; | ||||
|  	int passive = 0; | ||||
| @@ -1871,9 +1876,15 @@ struct thermal_zone_device *thermal_zone_device_register(const char *type,
 | ||||
|  		goto unregister; | ||||
|   | ||||
|  	for (count = 0; count < trips; count++) { | ||||
| -		tz->ops->get_trip_type(tz, count, &trip_type);
 | ||||
| +		if (tz->ops->get_trip_type(tz, count, &trip_type))
 | ||||
| +			set_bit(count, &tz->trips_disabled);
 | ||||
|  		if (trip_type == THERMAL_TRIP_PASSIVE) | ||||
|  			passive = 1; | ||||
| +		if (tz->ops->get_trip_temp(tz, count, &trip_temp))
 | ||||
| +			set_bit(count, &tz->trips_disabled);
 | ||||
| +		/* Check for bogus trip points */
 | ||||
| +		if (trip_temp == 0)
 | ||||
| +			set_bit(count, &tz->trips_disabled);
 | ||||
|  	} | ||||
|   | ||||
|  	if (!passive) { | ||||
| diff --git a/include/linux/thermal.h b/include/linux/thermal.h
 | ||||
| index 9c48199..a55d052 100644
 | ||||
| --- a/include/linux/thermal.h
 | ||||
| +++ b/include/linux/thermal.h
 | ||||
| @@ -156,6 +156,7 @@ struct thermal_attr {
 | ||||
|   * @trip_hyst_attrs:	attributes for trip points for sysfs: trip hysteresis | ||||
|   * @devdata:	private pointer for device private data | ||||
|   * @trips:	number of trip points the thermal zone supports | ||||
| + * @trips_disabled;	bitmap for disabled trips
 | ||||
|   * @passive_delay:	number of milliseconds to wait between polls when | ||||
|   *			performing passive cooling. | ||||
|   * @polling_delay:	number of milliseconds to wait between polls when | ||||
| @@ -191,6 +192,7 @@ struct thermal_zone_device {
 | ||||
|  	struct thermal_attr *trip_hyst_attrs; | ||||
|  	void *devdata; | ||||
|  	int trips; | ||||
| +	unsigned long trips_disabled;	/* bitmap for disabled trips */
 | ||||
|  	int passive_delay; | ||||
|  	int polling_delay; | ||||
|  	int temperature; | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user