Re: [PATCH] staging: iio: Use div64_ul instead of do_div

From: Greg Kroah-Hartman
Date: Thu Oct 20 2022 - 11:28:20 EST


On Wed, Oct 19, 2022 at 02:38:29PM +0900, Kang Minchul wrote:
> Using div64_ul instead of do_div (64-by-32 division) is more
> recommended by coccicheck because this can avoid potential truncation.
>
> So this commit changes do_div to div64_ul and
> remove coccicheck warnings.
>
> Signed-off-by: Kang Minchul <tegongkang@xxxxxxxxx>
> ---
> drivers/staging/iio/frequency/ad9832.c | 2 +-
> drivers/staging/iio/frequency/ad9834.c | 2 +-
> drivers/staging/iio/impedance-analyzer/ad5933.c | 2 +-
> 3 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/staging/iio/frequency/ad9832.c b/drivers/staging/iio/frequency/ad9832.c
> index 6f9eebd6c7ee..cd038480f63c 100644
> --- a/drivers/staging/iio/frequency/ad9832.c
> +++ b/drivers/staging/iio/frequency/ad9832.c
> @@ -122,7 +122,7 @@ static unsigned long ad9832_calc_freqreg(unsigned long mclk, unsigned long fout)
> {
> unsigned long long freqreg = (u64)fout *
> (u64)((u64)1L << AD9832_FREQ_BITS);
> - do_div(freqreg, mclk);
> + freqreg = div64_ul(freqreg, mclk);

I think the original code here is correct, no need for a change, unless
you have the hardware to test this out and can verify it all still works
identically.

thanks,

greg k-h