[PATCH V2] selftests/vDSO: Add riscv getcpu & gettimeofday test

Palmer Dabbelt palmer at dabbelt.com
Fri Dec 2 10:03:23 PST 2022


On Thu, 03 Nov 2022 01:04:51 PDT (-0700), guoren at kernel.org wrote:
> From: Guo Ren <guoren at kernel.org>
>
> 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: *;
>         };
> }
>
> Co-developed-by: haocheng.zy <haocheng.zy at linux.alibaba.com>
> Signed-off-by: haocheng.zy <haocheng.zy at linux.alibaba.com>
> Suggested-by: Mao Han <han_mao at linux.alibaba.com>
> Reviewed-by: Shuah Khan <skhan at linuxfoundation.org>
> Signed-off-by: Guo Ren <guoren at linux.alibaba.com>
> Signed-off-by: Guo Ren <guoren at kernel.org>
> Cc: Paul Walmsley <paul.walmsley at sifive.com>
> Cc: Palmer Dabbelt <palmer at dabbelt.com>
> Cc: Elliott Hughes <enh at google.com>
> ---
>  tools/testing/selftests/vDSO/vdso_test_getcpu.c       | 4 ++++
>  tools/testing/selftests/vDSO/vdso_test_gettimeofday.c | 3 +++
>  2 files changed, 7 insertions(+)
>
> diff --git a/tools/testing/selftests/vDSO/vdso_test_getcpu.c b/tools/testing/selftests/vDSO/vdso_test_getcpu.c
> index fc25ede131b8..1df5d057d79f 100644
> --- a/tools/testing/selftests/vDSO/vdso_test_getcpu.c
> +++ b/tools/testing/selftests/vDSO/vdso_test_getcpu.c
> @@ -14,7 +14,11 @@
>  #include "../kselftest.h"
>  #include "parse_vdso.h"
>
> +#if defined(__riscv)
> +const char *version = "LINUX_4.15";
> +#else
>  const char *version = "LINUX_2.6";
> +#endif
>  const char *name = "__vdso_getcpu";
>
>  struct getcpu_cache;
> diff --git a/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c b/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c
> index 8ccc73ed8240..e411f287a426 100644
> --- a/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c
> +++ b/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c
> @@ -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";

Reviewed-by: Palmer Dabbelt <palmer at rivosinc.com>
Acked-by: Palmer Dabbelt <palmer at rivosinc.com>

Looks like Shauh usually takes patches for this vdso selftest, but happy 
to take it through the RISC-V tree if that's easier.  Either way's fine 
with me, I'm leaving it in patchwork for now as a reminder.

Thanks!



More information about the linux-riscv mailing list