summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDan Carpenter <error27@gmail.com>2026-06-26 13:38:22 +0300
committerDaniel Lezcano <daniel.lezcano@kernel.org>2026-07-08 13:18:36 +0200
commitdd04ad1cdabcad51e34b74b4e91b9aeb7180d05d (patch)
tree27710d551c182e4612594dfed2bb9b98bbc58ab4 /include
parent8cdeaa50eae8dad34885515f62559ee83e7e8dda (diff)
thermal/drivers/rcar: Fix error checking in probe()
This code accidentally calls thermal_zone_device_enable() before checking whether thermal_zone_device_register_with_trips() failed. Move the call until later to avoid an error pointer dereference of "priv->zone". The driver works differently depending on if we are using OF thermal or not. We use thermal_add_hwmon_sysfs() if we are using OF thermal and call thermal_zone_device_enable() if not. We can share same error check for if either of these fail. Moving the thermal_zone_device_enable() call is a bit cleaner as well. The original code used a three step process to cleanup: 1. Call thermal_zone_device_unregister() to cleanup. 2. Set priv->zone to an error pointer to preserve the error code. 3. Set priv->zone to NULL to avoid a second call to thermal_zone_device_unregister() in the rcar_thermal_remove() function. Now we can just do a direct goto error_unregister and rcar_thermal_remove() handles the cleanup properly. Fixes: bbcf90c0646a ("thermal: Explicitly enable non-changing thermal zone devices") Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Daniel Lezcano <daniel.lezcano@kernel.org> Link: https://patch.msgid.link/aj5WnseULiwgmlWv@stanley.mountain
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions