sysdeps: Add clock_gettime64 vDSO
Commit Message
On Wed, 18 Sep 2019, Alistair Francis wrote:
> Add support for the clock_gettim64 vDSO calls.
>
> 2019-09-18 Alistair Francis <alistair.francis@wdc.com>
>
> * sysdeps/unix/sysv/linux/init-first.c: Add clock_gettime64
> vDSO.
> * sysdeps/unix/sysv/linux/libc-vdso.h: Likewise.
FYI, I believe this requires a complementing change like below.
Maciej
---
sysdeps/unix/sysv/linux/riscv/sysdep.h | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
glibc-clock-gettime-vdso-update.diff
Comments
On Thu, Sep 19, 2019 at 5:26 AM Maciej W. Rozycki <macro@wdc.com> wrote:
>
> On Wed, 18 Sep 2019, Alistair Francis wrote:
>
> > Add support for the clock_gettim64 vDSO calls.
> >
> > 2019-09-18 Alistair Francis <alistair.francis@wdc.com>
> >
> > * sysdeps/unix/sysv/linux/init-first.c: Add clock_gettime64
> > vDSO.
> > * sysdeps/unix/sysv/linux/libc-vdso.h: Likewise.
>
> FYI, I believe this requires a complementing change like below.
>
> Maciej
>
> ---
> sysdeps/unix/sysv/linux/riscv/sysdep.h | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> glibc-clock-gettime-vdso-update.diff
> Index: glibc/sysdeps/unix/sysv/linux/riscv/sysdep.h
> ===================================================================
> --- glibc.orig/sysdeps/unix/sysv/linux/riscv/sysdep.h
> +++ glibc/sysdeps/unix/sysv/linux/riscv/sysdep.h
> @@ -199,7 +199,11 @@
>
> /* List of system calls which are supported as vsyscalls. */
> # define HAVE_CLOCK_GETRES_VSYSCALL "__vdso_clock_getres"
> -# define HAVE_CLOCK_GETTIME_VSYSCALL "__vdso_clock_gettime"
> +# if __riscv_xlen == 32
> +# define HAVE_CLOCK_GETTIME64_VSYSCALL "__vdso_clock_gettime64"
> +# else
> +# define HAVE_CLOCK_GETTIME_VSYSCALL "__vdso_clock_gettime"
> +# endif
> # define HAVE_GETTIMEOFDAY_VSYSCALL "__vdso_gettimeofday"
> # define HAVE_GETCPU_VSYSCALL "__vdso_getcpu"
Yes, it will. I have a similar change in with the RV32 patches. I
wanted to send this separate to reduce the size of that series.
Alistair
>
===================================================================
@@ -199,7 +199,11 @@
/* List of system calls which are supported as vsyscalls. */
# define HAVE_CLOCK_GETRES_VSYSCALL "__vdso_clock_getres"
-# define HAVE_CLOCK_GETTIME_VSYSCALL "__vdso_clock_gettime"
+# if __riscv_xlen == 32
+# define HAVE_CLOCK_GETTIME64_VSYSCALL "__vdso_clock_gettime64"
+# else
+# define HAVE_CLOCK_GETTIME_VSYSCALL "__vdso_clock_gettime"
+# endif
# define HAVE_GETTIMEOFDAY_VSYSCALL "__vdso_gettimeofday"
# define HAVE_GETCPU_VSYSCALL "__vdso_getcpu"