summaryrefslogtreecommitdiffstats
path: root/kernel/time
diff options
context:
space:
mode:
authorChristophe Leroy <christophe.leroy@c-s.fr>2020-02-07 13:39:04 +0100
committerThomas Gleixner <tglx@linutronix.de>2020-02-17 20:12:18 +0100
commite876f0b69dc993e86ca7795e63e98385aa9a7ef3 (patch)
treec8f303d2886451c94a8cb67beec824145b28087b /kernel/time
parent8345228ccf31f94e3ff7ec5458ac7cc13cb323fa (diff)
downloadlinux-e876f0b69dc993e86ca7795e63e98385aa9a7ef3.tar.gz
linux-e876f0b69dc993e86ca7795e63e98385aa9a7ef3.tar.bz2
linux-e876f0b69dc993e86ca7795e63e98385aa9a7ef3.zip
lib/vdso: Allow architectures to provide the vdso data pointer
On powerpc, __arch_get_vdso_data() clobbers the link register, requiring the caller to save it. As the parent function already has to set a stack frame and saves the link register before calling the C vdso function, retrieving the vdso data pointer there is less overhead. Split out the functional code from the __cvdso.*() interfaces into new static functions which can either be called from the existing interfaces with the vdso data pointer supplied via __arch_get_vdso_data() or directly from ASM code. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Tested-by: Vincenzo Frascino <vincenzo.frascino@arm.com> Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com> Link: https://lore.kernel.org/r/abf97996602ef07223fec30c005df78e5ed41b2e.1580399657.git.christophe.leroy@c-s.fr Link: https://lkml.kernel.org/r/20200207124403.965789141@linutronix.de
Diffstat (limited to 'kernel/time')
0 files changed, 0 insertions, 0 deletions