summaryrefslogtreecommitdiffstats
path: root/arch/mips/vdso
diff options
context:
space:
mode:
authorVincenzo Frascino <vincenzo.frascino@arm.com>2019-06-21 10:52:48 +0100
committerPaul Burton <paul.burton@mips.com>2019-07-25 21:45:52 -0700
commit1f66c45db3302386ca3bb3b5ed05248434237fc9 (patch)
tree899d9c28f0be4f3e97d1ed6c65d9d313bbe93c43 /arch/mips/vdso
parentabed3d826f2fb723c61b1251720348a42357c4e5 (diff)
downloadlinux-1f66c45db3302386ca3bb3b5ed05248434237fc9.tar.gz
linux-1f66c45db3302386ca3bb3b5ed05248434237fc9.tar.bz2
linux-1f66c45db3302386ca3bb3b5ed05248434237fc9.zip
mips: Add clock_gettime64 entry point
With the release of Linux 5.1 has been added a new syscall, clock_gettime64, that provided a 64 bit time value for a specified clock_ID to make the kernel Y2038 safe on 32 bit architectures. Update the mips32 specific vDSO library accordingly with what it has been done for the kernel syscall exposing the clock_gettime64 entry point. Cc: Ralf Baechle <ralf@linux-mips.org> Cc: Paul Burton <paul.burton@mips.com> Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com> Signed-off-by: Paul Burton <paul.burton@mips.com>
Diffstat (limited to 'arch/mips/vdso')
-rw-r--r--arch/mips/vdso/vdso.lds.S3
-rw-r--r--arch/mips/vdso/vgettimeofday.c6
2 files changed, 9 insertions, 0 deletions
diff --git a/arch/mips/vdso/vdso.lds.S b/arch/mips/vdso/vdso.lds.S
index ad9f2f2c0c97..da4627430aba 100644
--- a/arch/mips/vdso/vdso.lds.S
+++ b/arch/mips/vdso/vdso.lds.S
@@ -96,6 +96,9 @@ VERSION
__vdso_clock_gettime;
__vdso_gettimeofday;
__vdso_clock_getres;
+#if _MIPS_SIM != _MIPS_SIM_ABI64
+ __vdso_clock_gettime64;
+#endif
#endif
local: *;
};
diff --git a/arch/mips/vdso/vgettimeofday.c b/arch/mips/vdso/vgettimeofday.c
index 48e1ab32204b..6ebdc37c89fc 100644
--- a/arch/mips/vdso/vgettimeofday.c
+++ b/arch/mips/vdso/vgettimeofday.c
@@ -29,6 +29,12 @@ int __vdso_clock_getres(clockid_t clock_id,
return __cvdso_clock_getres_time32(clock_id, res);
}
+int __vdso_clock_gettime64(clockid_t clock,
+ struct __kernel_timespec *ts)
+{
+ return __cvdso_clock_gettime(clock, ts);
+}
+
#else
int __vdso_clock_gettime(clockid_t clock,