From 97554e4382e5d85eccf146b58f85aaad7e3d687c Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Fri, 17 Apr 2015 11:48:51 -0300 Subject: Consolidate gettimeofday across aarch64/s390/tile This patch removes the architecture specific gettimeofday implementation to use the vDSO symbol and consolidate it on a common Linux one. Similar to clock_gettime and clock_getres vDSO implementation, each port that supports gettimeofday through vDSO should just implement INLINE_VSYSCALL to access the symbol and define HAVE_{GETTIME,GETRES}_VSYSCAL as 1. --- sysdeps/unix/sysv/linux/aarch64/gettimeofday.c | 39 -------------------------- sysdeps/unix/sysv/linux/aarch64/init-first.c | 3 -- sysdeps/unix/sysv/linux/aarch64/sysdep.h | 1 + 3 files changed, 1 insertion(+), 42 deletions(-) delete mode 100644 sysdeps/unix/sysv/linux/aarch64/gettimeofday.c (limited to 'sysdeps/unix/sysv/linux/aarch64') diff --git a/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c b/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c deleted file mode 100644 index daa6538a68..0000000000 --- a/sysdeps/unix/sysv/linux/aarch64/gettimeofday.c +++ /dev/null @@ -1,39 +0,0 @@ -/* Copyright (C) 2005-2015 Free Software Foundation, Inc. - - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include - -#undef __gettimeofday - -#define HAVE_VSYSCALL -#include - -/* Get the current time of day and timezone information, - putting it into *tv and *tz. If tz is null, *tz is not filled. - Returns 0 on success, -1 on errors. */ -int -__gettimeofday (tv, tz) - struct timeval *tv; - struct timezone *tz; -{ - return INLINE_VSYSCALL (gettimeofday, 2, tv, tz); -} -libc_hidden_def (__gettimeofday) -weak_alias (__gettimeofday, gettimeofday) -libc_hidden_weak (gettimeofday) diff --git a/sysdeps/unix/sysv/linux/aarch64/init-first.c b/sysdeps/unix/sysv/linux/aarch64/init-first.c index 854189a793..9cf6c258c4 100644 --- a/sysdeps/unix/sysv/linux/aarch64/init-first.c +++ b/sysdeps/unix/sysv/linux/aarch64/init-first.c @@ -18,9 +18,6 @@ #ifdef SHARED # include -# undef __gettimeofday -# undef __clock_gettime -# undef __clock_getres # include int (*VDSO_SYMBOL(gettimeofday)) (struct timeval *, void *) attribute_hidden; diff --git a/sysdeps/unix/sysv/linux/aarch64/sysdep.h b/sysdeps/unix/sysv/linux/aarch64/sysdep.h index e69622a24b..fe94a50d47 100644 --- a/sysdeps/unix/sysv/linux/aarch64/sysdep.h +++ b/sysdeps/unix/sysv/linux/aarch64/sysdep.h @@ -155,6 +155,7 @@ /* List of system calls which are supported as vsyscalls. */ # define HAVE_CLOCK_GETRES_VSYSCALL 1 # define HAVE_CLOCK_GETTIME_VSYSCALL 1 +# define HAVE_GETTIMEOFDAY_VSYSCALL 1 /* Define a macro which expands into the inline wrapper code for a system call. */ -- cgit 1.4.1