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 <christophe.le...@c-s.fr> --- 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