When the timebase is used, make __arch_vdso_capable() always
return true. When the RTC clock is used, make __arch_vdso_capable()
always return false.
Before the patch:
clock-gettime-realtime: vdso: 1086 nsec/call
After the patch:
clock-gettime-realtime: vdso: 1033 nsec/call
Signed-off-by: Christophe Leroy <[email protected]>
---
arch/powerpc/include/asm/vdso/gettimeofday.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/arch/powerpc/include/asm/vdso/gettimeofday.h b/arch/powerpc/include/asm/vdso/gettimeofday.h
index 0a247f9b9af9..74b6eef8fbe9 100644
--- a/arch/powerpc/include/asm/vdso/gettimeofday.h
+++ b/arch/powerpc/include/asm/vdso/gettimeofday.h
@@ -74,6 +74,12 @@ static __always_inline u64 __arch_get_hw_counter(s32 clock_mode)
const struct vdso_data *__arch_get_vdso_data(void);
+static inline bool __arch_vdso_capable(const struct vdso_data *vd)
+{
+ return !__USE_RTC();
+}
+#define __arch_vdso_capable __arch_vdso_capable
+
/*
* powerpc specific delta calculation.
*
--
2.13.3