Message ID | 3336146.44csPzL39Z@rjwysocki.net |
---|---|
State | New |
Headers | show |
Series | thermal: core: Fixes and cleanups, mostly related to thermal zone init and exit | expand |
On 10/4/24 20:05, Rafael J. Wysocki wrote: > From: Rafael J. Wysocki <rafael.j.wysocki@intel.com> > > Since user space can start interacting with a new thermal zone as soon > as device_register() called by thermal_zone_device_register_with_trips() > returns, it is better to initialize the thermal zone before calling > device_register() on it. > > Fixes: d0df264fbd3c ("thermal/core: Remove pointless thermal_zone_device_reset() function") > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> > --- > > This is a new iteration of > > https://lore.kernel.org/linux-pm/10527854.nUPlyArG6x@rjwysocki.net/ > > v1 -> v2: Fix typo in the subject > > --- > drivers/thermal/thermal_core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > Index: linux-pm/drivers/thermal/thermal_core.c > =================================================================== > --- linux-pm.orig/drivers/thermal/thermal_core.c > +++ linux-pm/drivers/thermal/thermal_core.c > @@ -1465,6 +1465,7 @@ thermal_zone_device_register_with_trips( > thermal_zone_destroy_device_groups(tz); > goto remove_id; > } > + thermal_zone_device_init(tz); > result = device_register(&tz->device); > if (result) > goto release_device; > @@ -1503,7 +1504,6 @@ thermal_zone_device_register_with_trips( > > mutex_unlock(&thermal_list_lock); > > - thermal_zone_device_init(tz); > /* Update the new thermal zone and mark it as already updated. */ > if (atomic_cmpxchg(&tz->need_update, 1, 0)) > thermal_zone_device_update(tz, THERMAL_EVENT_UNSPECIFIED); > > > Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Index: linux-pm/drivers/thermal/thermal_core.c =================================================================== --- linux-pm.orig/drivers/thermal/thermal_core.c +++ linux-pm/drivers/thermal/thermal_core.c @@ -1465,6 +1465,7 @@ thermal_zone_device_register_with_trips( thermal_zone_destroy_device_groups(tz); goto remove_id; } + thermal_zone_device_init(tz); result = device_register(&tz->device); if (result) goto release_device; @@ -1503,7 +1504,6 @@ thermal_zone_device_register_with_trips( mutex_unlock(&thermal_list_lock); - thermal_zone_device_init(tz); /* Update the new thermal zone and mark it as already updated. */ if (atomic_cmpxchg(&tz->need_update, 1, 0)) thermal_zone_device_update(tz, THERMAL_EVENT_UNSPECIFIED);