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

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

 





On 7/16/22 5:51 AM, Pu Lehui 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.

For subject, we are not 'Remove the casting ...'. What the code did is
to change the casting.

Also, I don't understand the above commit message. What does this mean
about 'data extension operation of jited_ksyms and jited_linfo into zero extension'?

In prog_tests/btf.c, we have a few other places to cast jited_linfo[...]/jited_ksyms[...] to 'long' type. Maybe casting
to 'unsigned long' is a better choice. Casting to 'unsigned long long'
of course will work, but is it necessary? Or you are talking about
64bit kernel and 32bit user space?


Signed-off-by: Pu Lehui <pulehui@xxxxxxxxxx>
---
  tools/testing/selftests/bpf/prog_tests/btf.c | 16 +++++++++-------
  1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/btf.c b/tools/testing/selftests/bpf/prog_tests/btf.c
index e852a9df779d..db10fa1745d1 100644
--- a/tools/testing/selftests/bpf/prog_tests/btf.c
+++ b/tools/testing/selftests/bpf/prog_tests/btf.c
@@ -6613,8 +6613,9 @@ 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",
+		  (unsigned long long)(jited_linfo[0]),
+		  (unsigned long long)(jited_ksyms[0]))) {
  		err = -1;
  		goto done;
  	}
@@ -6632,16 +6633,17 @@ 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, (unsigned long long)jited_linfo[i],
+			  i - 1, (unsigned long long)(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, (unsigned long long)jited_linfo[i],
+			  (unsigned long long)cur_func_ksyms,
  			  cur_func_len)) {
  			err = -1;
  			goto done;



[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux