diff options
author | Roland McGrath <roland@hack.frob.com> | 2012-11-29 15:49:37 -0800 |
---|---|---|
committer | Roland McGrath <roland@hack.frob.com> | 2012-11-29 15:49:37 -0800 |
commit | 6604e6b70e3012169462c29b2ee6d9b14cc8b461 (patch) | |
tree | a5092add52d51fd2d9295165fd69f44d56b010ad | |
parent | 38f34d05c37360376b9ff4b12a4d014247edc633 (diff) | |
download | glibc-roland/sysconf-clocks.tar.gz glibc-roland/sysconf-clocks.tar.xz glibc-roland/sysconf-clocks.zip |
Remove cruft in Linux sysconf for conditional support of monotonic and CPU clocks. roland/sysconf-clocks
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/sysconf.c | 42 |
2 files changed, 7 insertions, 40 deletions
diff --git a/ChangeLog b/ChangeLog index 6c973b4c73..dc074723c7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2012-11-29 Roland McGrath <roland@hack.frob.com> + * sysdeps/unix/sysv/linux/sysconf.c (has_cpuclock): Function removed. + (HAS_CPUCLOCK): Macro removed. + (__sysconf): Return unconditional success for _SC_MONOTONIC_CLOCK, + _SC_CPUTIME, and _SC_THREAD_CPUTIME. + * inet/tst-inet6_rth.c (do_test): Use a union rather than type punning. 2012-11-28 Jeff Law <law@redhat.com> diff --git a/sysdeps/unix/sysv/linux/sysconf.c b/sysdeps/unix/sysv/linux/sysconf.c index 47ce5ef07c..1f738ab2da 100644 --- a/sysdeps/unix/sysv/linux/sysconf.c +++ b/sysdeps/unix/sysv/linux/sysconf.c @@ -34,34 +34,6 @@ static long int posix_sysconf (int name); -#ifndef HAS_CPUCLOCK -static long int -has_cpuclock (int name) -{ -# if defined __NR_clock_getres || HP_TIMING_AVAIL - /* If we have HP_TIMING, we will fall back on that if the system - call does not work, so we support it either way. */ -# if !HP_TIMING_AVAIL - /* Check using the clock_getres system call. */ - struct timespec ts; - INTERNAL_SYSCALL_DECL (err); - int r = INTERNAL_SYSCALL (clock_getres, err, 2, - (name == _SC_CPUTIME - ? CLOCK_PROCESS_CPUTIME_ID - : CLOCK_THREAD_CPUTIME_ID), - &ts); - if (INTERNAL_SYSCALL_ERROR_P (r, err)) - return -1; -# endif - return _POSIX_VERSION; -# else - return -1; -# endif -} -# define HAS_CPUCLOCK(name) has_cpuclock (name) -#endif - - /* Get the value of the system variable NAME. */ long int __sysconf (int name) @@ -71,21 +43,11 @@ __sysconf (int name) switch (name) { struct rlimit rlimit; -#ifdef __NR_clock_getres - case _SC_MONOTONIC_CLOCK: - /* Check using the clock_getres system call. */ - { - struct timespec ts; - INTERNAL_SYSCALL_DECL (err); - int r; - r = INTERNAL_SYSCALL (clock_getres, err, 2, CLOCK_MONOTONIC, &ts); - return INTERNAL_SYSCALL_ERROR_P (r, err) ? -1 : _POSIX_VERSION; - } -#endif + case _SC_MONOTONIC_CLOCK: case _SC_CPUTIME: case _SC_THREAD_CPUTIME: - return HAS_CPUCLOCK (name); + return _POSIX_VERSION; case _SC_ARG_MAX: #if !__ASSUME_ARG_MAX_STACK_BASED |