Re: [Resend][PATCH] drivers/thermal: optimize the for circle to run a bit fast
From: Daniel Lezcano
Date: Mon Oct 26 2020 - 14:35:28 EST
On 26/10/2020 02:49, Bernard wrote:
> Function thermal_zone_device_register, in the for circle, if the
> first if branch set the count bit in tz->trips_disabled, there is
> no need to set in the other if branch again.
> This change is to make the code run a bit fast and readable.
>
> Signed-off-by: Bernard Zhao <bernard@xxxxxxxx>
> ---
> drivers/thermal/thermal_core.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c
> index c6d74bc1c90b..03577794eea3 100644
> --- a/drivers/thermal/thermal_core.c
> +++ b/drivers/thermal/thermal_core.c
> @@ -1446,10 +1446,14 @@ thermal_zone_device_register(const char *type, int trips, int mask,
> goto release_device;
>
> for (count = 0; count < trips; count++) {
> - if (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 (tz->ops->get_trip_temp(tz, count, &trip_temp))
> + continue;
> + }
> + if (tz->ops->get_trip_temp(tz, count, &trip_temp)) {
> set_bit(count, &tz->trips_disabled);
> + continue;
> + }
> /* Check for bogus trip points */
> if (trip_temp == 0)
> set_bit(count, &tz->trips_disabled);
What about ?
if (tz->ops->get_trip_type(tz, count, &trip_type) ||
tz->ops->get_trip_temp(tz, count, &trip_temp) ||
!trip_temp)
set_bit(count, &tz->trips_disabled);
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog