Skip to contentSkip to conversation

selftests/vDSO: Add riscv getcpu & gettimeofday test

PATCH Superseded [email protected] 2 participants 2 messages Nov 2, 2022

Subsystems (4)

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 selftests/vDSO: Add riscv getcpu & gettimeofday test

From: Guo Ren <[email protected]>

Enable vDSO getcpu & gettimeofday test for riscv. But only riscv64 supports __vdso_gettimeofday and riscv32 is under development.

VERSION

{
        LINUX_4.15 {
        global:
                __vdso_rt_sigreturn;
                __vdso_gettimeofday;
                __vdso_clock_gettime;
                __vdso_clock_getres;
                __vdso_getcpu;
                __vdso_flush_icache;
        local: *;
        };
}
---
 tools/testing/selftests/vDSO/vdso_test_getcpu.c       | 5 +++++
 tools/testing/selftests/vDSO/vdso_test_gettimeofday.c | 3 +++
 2 files changed, 8 insertions(+)
tools/testing/selftests/vDSO/vdso_test_getcpu.c +5 -0
index fc25ede131b8..1e474f406a87 100644
@@ -14,8 +14,13 @@
 #include "../kselftest.h"
 #include "parse_vdso.h"
 
+#if defined(__riscv)
+const char *version = "LINUX_4.15";
+const char *name = "__vdso_getcpu";
+#else
 const char *version = "LINUX_2.6";
 const char *name = "__vdso_getcpu";
+#endif
 
 struct getcpu_cache;
 typedef long (*getcpu_t)(unsigned int *, unsigned int *,
tools/testing/selftests/vDSO/vdso_test_gettimeofday.c +3 -0
index 8ccc73ed8240..e411f287a426 100644
@@ -27,6 +27,9 @@
 #if defined(__aarch64__)
 const char *version = "LINUX_2.6.39";
 const char *name = "__kernel_gettimeofday";
+#elif defined(__riscv)
+const char *version = "LINUX_4.15";
+const char *name = "__vdso_gettimeofday";
 #else
 const char *version = "LINUX_2.6";
 const char *name = "__vdso_gettimeofday";
Signature · 1 line
2.36.1
maintainer Reviewed-by on v1 1/1
#1 lore raw
Quoted 37 lines · On 11/2/22 02:15, [email protected] wrote:

From: Guo Ren <[email protected]>

Enable vDSO getcpu & gettimeofday test for riscv. But only riscv64 supports __vdso_gettimeofday and riscv32 is under development.

VERSION

{
         LINUX_4.15 {
         global:
                 __vdso_rt_sigreturn;
                 __vdso_gettimeofday;
                 __vdso_clock_gettime;
                 __vdso_clock_getres;
                 __vdso_getcpu;
                 __vdso_flush_icache;
         local: *;
         };
}
---
  tools/testing/selftests/vDSO/vdso_test_getcpu.c       | 5 +++++
  tools/testing/selftests/vDSO/vdso_test_gettimeofday.c | 3 +++
  2 files changed, 8 insertions(+)
tools/testing/selftests/vDSO/vdso_test_getcpu.c +0 -0
index fc25ede131b8..1e474f406a87 100644

tools/testing/selftests/vDSO/vdso_test_getcpu.c line 22

Quoted 9 lines
tools/testing/selftests/vDSO/vdso_test_getcpu.c +4 -0
@@ -14,8 +14,13 @@
  #include "../kselftest.h"
  #include "parse_vdso.h"
 
+#if defined(__riscv)
+const char *version = "LINUX_4.15";
+const char *name = "__vdso_getcpu";> +#else
  const char *version = "LINUX_2.6";
  const char *name = "__vdso_getcpu";
+#endif

name is same in both cases. Move it out of ifdef.

Quoted 8 lines
tools/testing/selftests/vDSO/vdso_test_getcpu.c +0 -0
  struct getcpu_cache;
  typedef long (*getcpu_t)(unsigned int *, unsigned int *,
tools/testing/selftests/vDSO/vdso_test_gettimeofday.c +0 -0
index 8ccc73ed8240..e411f287a426 100644

tools/testing/selftests/vDSO/vdso_test_gettimeofday.c line 35

Quoted 9 lines
tools/testing/selftests/vDSO/vdso_test_gettimeofday.c +3 -0
@@ -27,6 +27,9 @@
  #if defined(__aarch64__)
  const char *version = "LINUX_2.6.39";
  const char *name = "__kernel_gettimeofday";
+#elif defined(__riscv)
+const char *version = "LINUX_4.15";
+const char *name = "__vdso_gettimeofday";
  #else
  const char *version = "LINUX_2.6";
  const char *name = "__vdso_gettimeofday";

Rest looks fine.

thanks,
-- Shuah

_______________________________________________
linux-riscv mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-riscv