diff mbox series

[Resend] drivers/thermal: optimize the for circle to run a bit fast

Message ID ANAAuADPDd5Q*8KfRTwcp4ps.1.1603676964376.Hmail.bernard@vivo.com
State Superseded
Headers show
Series [Resend] drivers/thermal: optimize the for circle to run a bit fast | expand

Commit Message

Bernard Zhao Oct. 26, 2020, 1:49 a.m. UTC
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@vivo.com>
---
 drivers/thermal/thermal_core.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

Comments

Daniel Lezcano Oct. 26, 2020, 6:35 p.m. UTC | #1
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@vivo.com>
> ---
>  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);
Bernard Zhao Oct. 27, 2020, 1:19 a.m. UTC | #2
From: Daniel Lezcano <daniel.lezcano@linaro.org>
Date: 2020-10-27 02:35:18
To:  Bernard <bernard@vivo.com>,Zhang Rui <rui.zhang@intel.com>,Amit Kucheria <amitk@kernel.org>,linux-pm@vger.kernel.org,linux-kernel@vger.kernel.org
Cc:  opensource.kernel@vivo.com
Subject: Re: [Resend][PATCH] drivers/thermal: optimize the for circle to run a bit fast>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@vivo.com>
>> ---
>>  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);
>

Hi

  Sure, I will resubmit this patch, thanks!

BR//Bernard

>
>
>-- 
><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
Daniel Lezcano Oct. 27, 2020, 8:47 a.m. UTC | #3
On 27/10/2020 02:19, Bernard wrote:
> 

> From: Daniel Lezcano <daniel.lezcano@linaro.org>

> Date: 2020-10-27 02:35:18

> To:  Bernard <bernard@vivo.com>,Zhang Rui <rui.zhang@intel.com>,Amit Kucheria <amitk@kernel.org>,linux-pm@vger.kernel.org,linux-kernel@vger.kernel.org

> Cc:  opensource.kernel@vivo.com

> Subject: Re: [Resend][PATCH] drivers/thermal: optimize the for circle to run a bit fast>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@vivo.com>

>>> ---

>>>  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);

>>

> 

> Hi

> 

>   Sure, I will resubmit this patch, thanks!


Please, take the opportunity to fix the author name to be the same as
the signed-off-by.

Thanks

  -- Daniel



-- 
<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
diff mbox series

Patch

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);