Re: [PATCH] lib/lzo/lzo1x_compress.c: replace ternary operator with min() and min_t()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jiangshan Yi <13667453960@xxxxxxx> writes:

> From: Jiangshan Yi <yijiangshan@xxxxxxxxxx>
>
> Fix the following coccicheck warning:
>
> lib/lzo/lzo1x_compress.c:54: WARNING opportunity for min().
> lib/lzo/lzo1x_compress.c:329: WARNING opportunity for min().
>
> min() and min_t() 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: Jiangshan Yi <yijiangshan@xxxxxxxxxx>
> ---
>  lib/lzo/lzo1x_compress.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/lib/lzo/lzo1x_compress.c b/lib/lzo/lzo1x_compress.c
> index 76758e9296ba..9d31e7126606 100644
> --- a/lib/lzo/lzo1x_compress.c
> +++ b/lib/lzo/lzo1x_compress.c
> @@ -50,9 +50,7 @@ lzo1x_1_do_compress(const unsigned char *in, size_t in_len,
>  
>  		if (dv == 0 && bitstream_version) {
>  			const unsigned char *ir = ip + 4;
> -			const unsigned char *limit = ip_end
> -				< (ip + MAX_ZERO_RUN_LENGTH + 1)
> -				? ip_end : ip + MAX_ZERO_RUN_LENGTH + 1;
> +			const unsigned char *limit = min(ip_end, ip + MAX_ZERO_RUN_LENGTH + 1);
>  #if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) && \
>  	defined(LZO_FAST_64BIT_MEMORY_ACCESS)
>  			u64 dv64;
> @@ -326,7 +324,7 @@ static int lzogeneric1x_1_compress(const unsigned char *in, size_t in_len,
>  	data_start = op;
>  
>  	while (l > 20) {
> -		size_t ll = l <= (m4_max_offset + 1) ? l : (m4_max_offset + 1);
> +		size_t ll = min_t(size_t, l, m4_max_offset + 1);
>  		uintptr_t ll_end = (uintptr_t) ip + ll;
>  		if ((ll_end + ((t + ll) >> 5)) <= ll_end)
>  			break;

So these look like good changes to me, but I am not the maintainer of
this code.  Maybe Andrew (copied) would have a spot for this patch?

Thanks,

jon



[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux