@@ -83,6 +83,7 @@ VERSION
__vdso_clock_gettime;
__vdso_gettimeofday;
__vdso_clock_getres;
+ __vdso_clock_gettime64;
local: *;
};
}
@@ -14,6 +14,12 @@ notrace int __vdso_clock_gettime(clockid_t clock,
return __cvdso_clock_gettime32(clock, ts);
}
+notrace int __vdso_clock_gettime64(clockid_t clock,
+ struct __kernel_timespec *ts)
+{
+ return __cvdso_clock_gettime(clock, ts);
+}
+
notrace int __vdso_gettimeofday(struct __kernel_old_timeval *tv,
struct timezone *tz)
{
@@ -68,6 +68,7 @@ VERSION
__kernel_sigreturn_thumb;
__kernel_rt_sigreturn_arm;
__kernel_rt_sigreturn_thumb;
+ __vdso_clock_gettime64;
local: *;
};
}
@@ -100,6 +100,9 @@ VERSION
__vdso_clock_gettime;
__vdso_gettimeofday;
__vdso_clock_getres;
+#if _MIPS_SIM != _MIPS_SIM_ABI64
+ __vdso_clock_gettime64;
+#endif
#endif
local: *;
};
@@ -27,6 +27,12 @@ notrace int __vdso_clock_getres(clockid_t clock_id,
return __cvdso_clock_getres_time32(clock_id, res);
}
+notrace int __vdso_clock_gettime_time64(clockid_t clock,
+ struct __kernel_timespec *ts)
+{
+ return __cvdso_clock_gettime(clock, ts);
+}
+
#else
notrace int __vdso_clock_gettime(clockid_t clock,
@@ -54,6 +54,7 @@ int clock_getres(clockid_t, struct __kernel_timespec *)
#else
/* i386 only */
extern int __vdso_clock_gettime(clockid_t clock, struct old_timespec32 *ts);
+extern int __vdso_clock_gettime64(clockid_t clock, struct __kernel_timespec *ts);
extern int __vdso_clock_getres(clockid_t clock, struct old_timespec32 *res);
notrace int __vdso_clock_gettime(clockid_t clock, struct old_timespec32 *ts)
@@ -64,6 +65,11 @@ notrace int __vdso_clock_gettime(clockid_t clock, struct old_timespec32 *ts)
int clock_gettime(clockid_t, struct old_timespec32 *)
__attribute__((weak, alias("__vdso_clock_gettime")));
+notrace int __vdso_clock_gettime64(clockid_t clock, struct __kernel_timespec *ts)
+{
+ return __cvdso_clock_gettime(clock, ts);
+}
+
notrace int __vdso_clock_getres(clockid_t clock,
struct old_timespec32 *res)
{
@@ -27,6 +27,7 @@ VERSION
__vdso_gettimeofday;
__vdso_time;
__vdso_clock_getres;
+ __vdso_clock_gettime64;
};
LINUX_2.5 {
Adding a clock_gettime64() vdso call on all32-bit machines is now trivial. Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- arch/arm/vdso/vdso.lds.S | 1 + arch/arm/vdso/vgettimeofday.c | 6 ++++++ arch/arm64/kernel/vdso32/vdso.lds.S | 1 + arch/mips/vdso/vdso.lds.S | 3 +++ arch/mips/vdso/vgettimeofday.c | 6 ++++++ arch/x86/entry/vdso/vclock_gettime.c | 6 ++++++ arch/x86/entry/vdso/vdso32/vdso32.lds.S | 1 + 7 files changed, 24 insertions(+)