[PATCH] drivers: comedi: replace ternary operator with min()

Guo Zhengkui posted 1 patch 3 years, 12 months ago
drivers/comedi/drivers.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] drivers: comedi: replace ternary operator with min()
Posted by Guo Zhengkui 3 years, 12 months ago
Fix the following coccicheck warning:

drivers/comedi/drivers.c:857:12-13: WARNING opportunity for min().

min() macro is defined in include/linux/minmax.h. It avoids multiple
evaluations of the arguments when non-constant and performs strict
type-checking.

Signed-off-by: Guo Zhengkui <guozhengkui@vivo.com>
---
 drivers/comedi/drivers.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/comedi/drivers.c b/drivers/comedi/drivers.c
index 8eb1f699a857..d4e2ed709bfc 100644
--- a/drivers/comedi/drivers.c
+++ b/drivers/comedi/drivers.c
@@ -854,7 +854,7 @@ int comedi_load_firmware(struct comedi_device *dev,
 		release_firmware(fw);
 	}
 
-	return ret < 0 ? ret : 0;
+	return min(ret, 0);
 }
 EXPORT_SYMBOL_GPL(comedi_load_firmware);
 
-- 
2.20.1
Re: [PATCH] drivers: comedi: replace ternary operator with min()
Posted by Ian Abbott 3 years, 12 months ago
On 13/05/2022 08:16, Guo Zhengkui wrote:
> Fix the following coccicheck warning:
> 
> drivers/comedi/drivers.c:857:12-13: WARNING opportunity for min().
> 
> min() macro is defined in include/linux/minmax.h. It avoids multiple
> evaluations of the arguments when non-constant and performs strict
> type-checking.
> 
> Signed-off-by: Guo Zhengkui <guozhengkui@vivo.com>
> ---
>   drivers/comedi/drivers.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/comedi/drivers.c b/drivers/comedi/drivers.c
> index 8eb1f699a857..d4e2ed709bfc 100644
> --- a/drivers/comedi/drivers.c
> +++ b/drivers/comedi/drivers.c
> @@ -854,7 +854,7 @@ int comedi_load_firmware(struct comedi_device *dev,
>   		release_firmware(fw);
>   	}
>   
> -	return ret < 0 ? ret : 0;
> +	return min(ret, 0);
>   }
>   EXPORT_SYMBOL_GPL(comedi_load_firmware);
>   

Looks good thanks.

I was wondering if it could be replaced with a simple `return ret;`, but 
unfortunately the `ret = cb(...);` call returns a non-negative value on 
success for some of the drivers' callback functions.  (The usbdux* 
drivers return the result of a call to `usb_control_msg(...)`.)

Reviewed-by: Ian Abbott <abbotti@mev.co.uk>

-- 
-=( Ian Abbott <abbotti@mev.co.uk> || MEV Ltd. is a company  )=-
-=( registered in England & Wales.  Regd. number: 02862268.  )=-
-=( Regd. addr.: S11 & 12 Building 67, Europa Business Park, )=-
-=( Bird Hall Lane, STOCKPORT, SK3 0XA, UK. || www.mev.co.uk )=-