[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7dd4b09e-b9ba-459d-bfa4-150e712f54bc@nvidia.com>
Date: Tue, 7 May 2024 18:25:42 -0700
From: John Hubbard <jhubbard@...dia.com>
To: Reinette Chatre <reinette.chatre@...el.com>, Shuah Khan <shuah@...nel.org>
CC: Nathan Chancellor <nathan@...nel.org>, Nick Desaulniers
<ndesaulniers@...gle.com>, Bill Wendling <morbo@...gle.com>, Justin Stitt
<justinstitt@...gle.com>, Fenghua Yu <fenghua.yu@...el.com>, Valentin Obst
<kernel@...entinobst.de>, <linux-kselftest@...r.kernel.org>, LKML
<linux-kernel@...r.kernel.org>, <llvm@...ts.linux.dev>
Subject: Re: [PATCH v2] selftests/resctrl: fix clang build warnings related to
abs(), labs() calls
On 5/7/24 6:21 PM, Reinette Chatre wrote:
> Hi John,
..
>
> The following (what was in v1) looks good to me. What am I missing?
>
> diff --git a/tools/testing/selftests/resctrl/cmt_test.c b/tools/testing/selftests/resctrl/cmt_test.c
> index a81f91222a89..05a241519ae8 100644
> --- a/tools/testing/selftests/resctrl/cmt_test.c
> +++ b/tools/testing/selftests/resctrl/cmt_test.c
> @@ -40,11 +40,11 @@ static int show_results_info(unsigned long sum_llc_val, int no_of_bits,
> int ret;
>
> avg_llc_val = sum_llc_val / num_of_runs;
> - avg_diff = (long)abs(cache_span - avg_llc_val);
> + avg_diff = (long)(cache_span - avg_llc_val);
This deletes the abs() call, because I incorrectly let clang's warning
lead me to believe that the abs() call was a no-op. But both you and Ilpo
pointed out that the math breaks if you do that.
> diff_percent = ((float)cache_span - avg_llc_val) / cache_span * 100;
>
> ret = platform && abs((int)diff_percent) > max_diff_percent &&
> - abs(avg_diff) > max_diff;
> + labs(avg_diff) > max_diff;
This hunk is OK.
>
> ksft_print_msg("%s Check cache miss rate within %lu%%\n",
> ret ? "Fail:" : "Pass:", max_diff_percent);
>
> Reinette
thanks,
--
John Hubbard
NVIDIA
Powered by blists - more mailing lists