[PATCH v2] vDSO cleanup
Adhemerval Zanella
adhemerval.zanella@linaro.org
Mon Apr 20 16:47:00 GMT 2015
Hi all,
Motivate by the recent ARM32 vDSO RFC patch [1], this is second spin on
a vDSO cleanup patches. As before the idea ia to simplify current
implementation and make it easier to add further vDSO symbols on other
arches..
The patchset is divided in three parts:
1. Create a default sysdep-vdso.h header with vdso symbol access to be
used on all arches. It also consolidates the PTR_MANGLE/DEMANGLE on
all ports.
2. Consolidate gettimeofday across aarch64/s390/tile: this simplify current
implementation for this arch by eliminating shard code.
3. x86: clock_gettime and timespec_get vDSO cleanup: simplify the x86
implementation by using the HAVE_CLOCK_GETTIME_VSYSCALL used by other
arches.
I have tested this patchset on the machines I have access: i686, x86_64,
arm-gnu-eabi, arm-gnu-eabihf, aarch64, and powerpc64le. I have also built
on s390-linux, s390x-linux and tilepro-linux to check for build breaks.
--
ChangeLog | 127 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
sysdeps/unix/sysv/linux/aarch64/gettimeofday.c | 38 --------------------------------------
sysdeps/unix/sysv/linux/aarch64/init-first.c | 20 ++++++++++++++------
sysdeps/unix/sysv/linux/aarch64/libc-vdso.h | 8 +++++---
sysdeps/unix/sysv/linux/aarch64/sysdep.h | 54 +-----------------------------------------------------
sysdeps/unix/sysv/linux/clock_getres.c | 10 +++-------
sysdeps/unix/sysv/linux/clock_gettime.c | 23 +++++------------------
sysdeps/unix/sysv/linux/gettimeofday.c | 39 +++++++++++++++++++++++++++++++++++++++
sysdeps/unix/sysv/linux/i386/init-first.c | 6 +++---
sysdeps/unix/sysv/linux/i386/sysdep.h | 4 ++++
sysdeps/unix/sysv/linux/powerpc/init-first.c | 56 +++++++++++++++++++++++++++++++++++++-------------------
sysdeps/unix/sysv/linux/powerpc/libc-vdso.h | 24 +++++++++++-------------
sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h | 95 +++++++++++++++++++++++-----------------------------------------------------------------------
sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h | 72 +++++++++--------------------------------------------------------------
sysdeps/unix/sysv/linux/powerpc/sched_getcpu.c | 3 +--
sysdeps/unix/sysv/linux/s390/gettimeofday.c | 39 ---------------------------------------
sysdeps/unix/sysv/linux/s390/init-first.c | 23 +++++++++++++++--------
sysdeps/unix/sysv/linux/s390/libc-vdso.h | 14 ++++++++------
sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h | 64 +++++----------------------------------------------------------
sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h | 64 +++++----------------------------------------------------------
sysdeps/unix/sysv/linux/sysdep-vdso.h | 98 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
sysdeps/unix/sysv/linux/tile/gettimeofday.c | 32 --------------------------------
sysdeps/unix/sysv/linux/tile/init-first.c | 18 ++++++++++++------
sysdeps/unix/sysv/linux/tile/libc-vdso.h | 14 ++++++++------
sysdeps/unix/sysv/linux/tile/sysdep.h | 69 +++++++++-----------------------------------------------------------
sysdeps/unix/sysv/linux/timespec_get.c | 21 ++++++---------------
sysdeps/unix/sysv/linux/x86/clock_gettime.c | 34 ----------------------------------
sysdeps/unix/sysv/linux/x86/libc-vdso.h | 4 +++-
sysdeps/unix/sysv/linux/x86/timespec_get.c | 29 -----------------------------
sysdeps/unix/sysv/linux/x86_64/init-first.c | 9 +++++----
sysdeps/unix/sysv/linux/x86_64/sysdep.h | 57 +++------------------------------------------------------
31 files changed, 459 insertions(+), 709 deletions(-)
More information about the Libc-alpha
mailing list