CVE-2026-93142

Summary

In the Linux kernel, the following vulnerability has been resolved:

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.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxbbcf90c0646ac797700269fa6645a6a46466c79f < a85bcd0c7ef66e3404b3c99e5589c5ea622a757eaffected
LinuxLinuxbbcf90c0646ac797700269fa6645a6a46466c79f < 810875c5996f731961fc5ee1bd24e711f2e8fe78affected
LinuxLinuxbbcf90c0646ac797700269fa6645a6a46466c79f < 623349a18d4c6e6add7876553c0cb6947c8d92e6affected
LinuxLinuxbbcf90c0646ac797700269fa6645a6a46466c79f < 35bf61798e7d4abf39667d98f298f793b3dd9bbeaffected
LinuxLinuxbbcf90c0646ac797700269fa6645a6a46466c79f < d67607e7749527850619a10d3ed033b02dcea516affected
LinuxLinuxbbcf90c0646ac797700269fa6645a6a46466c79f < dd04ad1cdabcad51e34b74b4e91b9aeb7180d05daffected
LinuxLinux5.9affected
LinuxLinux0 < 5.9unaffected
LinuxLinux6.1.188 <= 6.1.*unaffected
LinuxLinux6.6.157 <= 6.6.*unaffected
LinuxLinux6.12.110 <= 6.12.*unaffected
LinuxLinux6.18.52 <= 6.18.*unaffected
LinuxLinux7.2.6 <= 7.2.*unaffected
LinuxLinux7.3-rc1 <= *unaffected

Weaknesses

References