thermal/of: Fix cdev lookup in thermal_of_should_bind()
JIRA: https://issues.redhat.com/browse/RHEL-79821 commit 423de5b5bc5b267586b449abd1c4fde562aa0cf9 Author: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Date: Fri Feb 21 17:57:11 2025 +0100 thermal/of: Fix cdev lookup in thermal_of_should_bind() Since thermal_of_should_bind() terminates the loop after processing the first child found in cooling-maps, it will never match more than one cdev to a given trip point which is incorrect, as there may be cooling-maps associating one trip point with multiple cooling devices. Address this by letting the loop continue until either all children have been processed or a matching one has been found. To avoid adding conditionals or goto statements, put the loop in question into a separate function and make that function return right away after finding a matching cooling-maps entry. Fixes: 94c6110b0b13 ("thermal/of: Use the .should_bind() thermal zone callback") Link: https://lore.kernel.org/linux-pm/20250219-fix-thermal-of-v1-1-de36e7a590c4@chromium.org/ Reported-by:Yu-Che Cheng <giver@chromium.org> Signed-off-by:
Rafael J. Wysocki <rafael.j.wysocki@intel.com> Reviewed-by:
Yu-Che Cheng <giver@chromium.org> Tested-by:
Yu-Che Cheng <giver@chromium.org> Reviewed-by:
Lukasz Luba <lukasz.luba@arm.com> Tested-by:
Lukasz Luba <lukasz.luba@arm.com> Link: https://patch.msgid.link/2788228.mvXUDI8C0e@rjwysocki.net Signed-off-by:
David Arcari <darcari@redhat.com>
Please register or sign in to comment