Re: [PATCH bpf-next v3 6/6] selftests/bpf: Remove the casting about jited_ksyms and jited_linfo

From: Andrii Nakryiko
Date: Fri Jun 03 2022 - 17:05:28 EST


On Mon, May 30, 2022 at 1:58 AM Pu Lehui <pulehui@xxxxxxxxxx> wrote:
>
> We have unified data extension operation of jited_ksyms and jited_linfo
> into zero extension, so there's no need to cast u64 memory address to
> long data type.
>
> Signed-off-by: Pu Lehui <pulehui@xxxxxxxxxx>
> ---
> tools/testing/selftests/bpf/prog_tests/btf.c | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/tools/testing/selftests/bpf/prog_tests/btf.c b/tools/testing/selftests/bpf/prog_tests/btf.c
> index e6612f2bd0cf..65bdc4aa0a63 100644
> --- a/tools/testing/selftests/bpf/prog_tests/btf.c
> +++ b/tools/testing/selftests/bpf/prog_tests/btf.c
> @@ -6599,8 +6599,8 @@ static int test_get_linfo(const struct prog_info_raw_test *test,
> }
>
> if (CHECK(jited_linfo[0] != jited_ksyms[0],
> - "jited_linfo[0]:%lx != jited_ksyms[0]:%lx",
> - (long)(jited_linfo[0]), (long)(jited_ksyms[0]))) {
> + "jited_linfo[0]:%llx != jited_ksyms[0]:%llx",
> + jited_linfo[0], jited_ksyms[0])) {

__u64 is not always printed with %lld, on some platforms it is
actually %ld, so to avoid compiler warnings we just cast them to long
long or unsigned long long (and then %lld or %llu is fine). So please
update this part here and below.

> err = -1;
> goto done;
> }
> @@ -6618,16 +6618,16 @@ static int test_get_linfo(const struct prog_info_raw_test *test,
> }
>
> if (CHECK(jited_linfo[i] <= jited_linfo[i - 1],
> - "jited_linfo[%u]:%lx <= jited_linfo[%u]:%lx",
> - i, (long)jited_linfo[i],
> - i - 1, (long)(jited_linfo[i - 1]))) {
> + "jited_linfo[%u]:%llx <= jited_linfo[%u]:%llx",
> + i, jited_linfo[i],
> + i - 1, jited_linfo[i - 1])) {
> err = -1;
> goto done;
> }
>
> if (CHECK(jited_linfo[i] - cur_func_ksyms > cur_func_len,
> - "jited_linfo[%u]:%lx - %lx > %u",
> - i, (long)jited_linfo[i], (long)cur_func_ksyms,
> + "jited_linfo[%u]:%llx - %llx > %u",
> + i, jited_linfo[i], cur_func_ksyms,
> cur_func_len)) {
> err = -1;
> goto done;
> --
> 2.25.1
>