glibc/sysdeps/unix/sysv/linux
Joseph Myers d44a052c49 Fix powerpc32 __get_clockfreq for non-power4 (bug 17263).
In my powerpc32 testing I've observed misc/test-gettimebasefreq
failing.

This is a glibc build (soft-float, though that's not relevant here)
without any --with-cpu and without any special configuration of the
default CPU for GCC either.  In particular, it's one not using
sysdeps/powerpc/powerpc32/power4/hp-timing.h (although in fact the
processor I'm using for testing is POWER4-based), so hp_timing_t is
32-bit not 64-bit.  But the VDSO call being used by
INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK is generating a 64-bit result
(high part in r3, low part in r4).  The code extracting that result,
however, expects a result of the type hp_timing_t as passed to
INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK, meaning that only r3 (= 0) is
used and the value in r4 is ignored.  This patch fixes this by always
using uint64_t as the type in INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK -
reflecting the actual ABI (unconditional in the kernel) of that VDSO
call.  This is the minimal change for this issue - no check for
overflow, no change of the type of the timebase_freq variable or the
return type of __get_clockfreq to something other than hp_timing_t
(such a change would simply move the implicit conversions to the over
callers of that function), no change to hp_timing_t itself.

Tested for powerpc32 soft float.

	[BZ #17263]
	* sysdeps/unix/sysv/linux/powerpc/get_clockfreq.c: Include
	<stdint.h>.
	(__get_clockfreq): Use uint64_t instead of hp_timing_t in
	INTERNAL_VSYSCALL_NO_SYSCALL_FALLBACK call.
2014-08-13 16:06:18 +00:00
..
aarch64 AArch64: Remove lowlevellock.h 2014-08-04 16:11:51 +01:00
alpha alpha: Fix exception raising from soft-fp 2014-08-05 13:36:36 -07:00
arm Remove sysdeps/unix/sysv/linux/arm/lowlevellock.h 2014-08-01 18:59:48 -07:00
bits fcntl-linux.h: add new definitions and manual updates for open file description locks 2014-07-29 23:27:21 -04:00
generic Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
hppa Move architecture shlib-versions files to Linux-specific directories. 2014-07-17 14:31:12 +00:00
i386 [PATCH 2/6] Split i386 out of main Linux kernel-features.h. 2014-07-17 17:51:52 +00:00
ia64 ia64: define nocancel entry points in PSEUDO 2014-08-04 10:05:51 -04:00
m68k m68k: use generic lowlevellock.h 2014-07-18 23:35:11 +02:00
microblaze Move architecture shlib-versions files to Linux-specific directories. 2014-07-17 14:31:12 +00:00
mips MIPS - Remove mips lowlevellock.h. 2014-08-04 22:12:03 +00:00
net
netash
netatalk
netax25
neteconet
netinet
netipx
netiucv
netpacket
netrom
netrose
nfs
powerpc Fix powerpc32 __get_clockfreq for non-power4 (bug 17263). 2014-08-13 16:06:18 +00:00
s390 S/390: Revert the jmp_buf/ucontext_t ABI change. 2014-07-31 20:04:54 +02:00
scsi
sh [PATCH 5/6] Split sh out of main Linux kernel-features.h. 2014-07-17 17:54:43 +00:00
sparc [PATCH 3/6] Split sparc out of main Linux kernel-features.h. 2014-07-17 17:52:58 +00:00
sys
tile Move architecture shlib-versions files to Linux-specific directories. 2014-07-17 14:31:12 +00:00
wordsize-64 Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
x86 Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
x86_64 [PATCH 1/6] Split x86_64 out of main Linux kernel-features.h. 2014-07-17 17:49:45 +00:00
_exit.c
_G_config.h
a.out.h
accept4.c
accept.S
adjtime.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
aio_misc.h Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
aio_sigqueue.c
allocrtsig.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
arch-fork.h Add stub arch-fork.h header. 2014-05-16 11:47:13 -07:00
bind.S
check_native.c
check_pf.c Fix crash when system has no ipv6 address [BZ #17125] 2014-07-10 14:15:16 +05:30
clock_getcpuclockid.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
clock_getres.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
clock_gettime.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
clock_nanosleep.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
clock_settime.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
clock.c
cmsg_nxthdr.c
configure NPTL is no longer an add-on! 2014-07-07 09:29:06 -07:00
configure.ac NPTL is no longer an add-on! 2014-07-07 09:29:06 -07:00
connect.S
device-nrs.h
dl-brk.c
dl-execstack.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
dl-fxstatat64.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
dl-getcwd.c
dl-librecon.h
dl-openat64.c
dl-opendir.c Remove __ASSUME_O_CLOEXEC / O_CLOEXEC conditionals in sysdeps/unix/sysv/linux/. 2014-06-25 20:29:45 +00:00
dl-origin.c
dl-osinfo.h Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
dl-sbrk.c
dl-sysdep.c Add missing #include for MIN use in dl-sysdep.c. 2014-07-02 11:10:08 -07:00
dl-sysdep.h
dl-vdso.c
dl-vdso.h
dl-writev.h
epoll_pwait.c
errqueue.h
eventfd_read.c
eventfd_write.c
eventfd.c
execve.c
exit-thread.h Clean up __exit_thread. 2014-05-13 09:49:20 -07:00
faccessat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
fallocate64.c
fallocate.c
fatal-prepare.h
fchmodat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
fchownat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
fcntl.c Remove __ASSUME_F_GETOWN_EX. 2014-06-20 20:04:33 +00:00
fd_to_filename.h
fexecve.c
fips-private.h
fpathconf.c
fstatfs64.c
fstatvfs64.c Avoid stat/fstat in statvfs/fstatvfs (BZ #15132) 2014-05-29 09:41:29 +05:30
fstatvfs.c Remove an unused variable in fstatvfs. 2014-06-23 14:05:14 -07:00
ftime.c
ftruncate64.c
futimens.c
futimes.c Remove __ASSUME_UTIMENSAT. 2014-06-25 11:36:10 +00:00
futimesat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
fxstat64.c
fxstat.c
fxstatat64.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
fxstatat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
gai_sigqueue.c
getclktck.c
getcwd.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
getdents64.c
getdents.c
getdirentries64.c
getdirentries.c
getdtsz.c
gethostid.c
getipv4sourcefilter.c
getloadavg.c
getlogin_r.c
getlogin.c
getpagesize.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
getpeername.S
getpid.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
getpriority.c
getpt.c
getrlimit64.c
getsockname.S
getsockopt.S
getsourcefilter.c
getsysstats.c Remove __ASSUME_O_CLOEXEC / O_CLOEXEC conditionals in sysdeps/unix/sysv/linux/. 2014-06-25 20:29:45 +00:00
grantpt.c
if_index.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
ifaddrs.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
ifreq.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
Implies Get rid of nptl/sysdeps/pthread/ subdirectory 2014-06-12 13:48:47 -07:00
internal_accept4.S
internal_recvmmsg.S
internal_sendmmsg.S
internal_statvfs64.c
internal_statvfs.c Avoid stat/fstat in statvfs/fstatvfs (BZ #15132) 2014-05-29 09:41:29 +05:30
ipc_priv.h
kernel_sigaction.h
kernel_stat.h
kernel_termios.h
kernel-features.h [PATCH 6/6] Split s390 out of main Linux kernel-features.h. 2014-07-17 17:55:44 +00:00
kernel-posix-cpu-timers.h
kernel-posix-timers.h Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
ldd-rewrite.sed
lddlibc4.c
ldsodefs.h Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
libc_fatal.c
linkat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
linux_fsinfo.h
listen.S
llseek.c
local-setxid.h
lowlevellock-futex.h Separate Linuxisms from lowlevellock.h, make a generic one 2014-07-15 15:23:06 -07:00
lseek64.c
lutimes.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
lxstat64.c
lxstat.c
makedev.c
Makefile Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
malloc-sysdep.h
mkdirat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
mmap64.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
mq_close.c
mq_getattr.c
mq_notify.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
mq_open.c
mq_receive.c
mq_send.c
mq_unlink.c
msgctl.c
msgget.c
msgrcv.c
msgsnd.c
netlinkaccess.h Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
nice.c
not-cancel.h Fix __waitpid_nocancel link error. 2014-05-16 15:45:58 -07:00
nptl-signals.h Split nptl-signals.h out from pthreadP.h 2014-07-31 11:37:48 -07:00
nscd_setup_thread.c
ntp_gettime.c
ntp_gettimex.c
open64.c
openat64.c
openat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
opendir.c
opensock.c Remove __ASSUME_SOCK_CLOEXEC / SOCK_CLOEXEC conditionals in Linux-specific code. 2014-06-20 23:22:08 +00:00
pathconf.c Remove __ASSUME_XFS_RESTRICTED_CHOWN. 2014-06-25 16:39:33 +00:00
pathconf.h
paths.h
posix_fadvise64.c
posix_fadvise.c
posix_fallocate64.c
posix_fallocate.c
posix_madvise.c
ppoll.c
pread64.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
pread.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
preadv64.c
preadv.c
prlimit.c
prof-freq.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
profil.c
pselect.c
pt-raise.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
pthread_getaffinity.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
pthread_getcpuclockid.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
pthread_getname.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
pthread_kill.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
pthread_setaffinity.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
pthread_setname.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
pthread_sigmask.c Get rid of nptl/sysdeps/pthread/ subdirectory 2014-06-12 13:48:47 -07:00
pthread_sigqueue.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
ptrace.c
ptsname.c ptsname_r: don't leak uninitialized memory (BZ #16917) 2014-05-16 00:07:29 +02:00
pwrite64.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
pwrite.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
pwritev64.c
pwritev.c
raise.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
readahead.c
readdir64_r.c
readdir64.c
readlinkat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
readonly-area.c
readv.c Remove __ASSUME_COMPLETE_READV_WRITEV. 2014-06-25 11:31:51 +00:00
reboot.c
recv.S
recvfrom.S
recvmmsg.c
recvmsg.S
remove.c
renameat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
sa_len.c
safe-fatal.h Add __safe_fatal and use it in __pthread_unwind forwarder fallback. 2014-07-31 14:00:33 -07:00
sched_getaffinity.c
sched_getcpu.c
sched_setaffinity.c
segfault.c
semctl.c
semget.c
semop.c
semtimedop.c
send.S
sendmmsg.c
sendmsg.S
sendto.S
setegid.c
seteuid.c
setgid.c
setgroups.c
sethostid.c
setipv4sourcefilter.c
setregid.c
setresgid.c
setresuid.c
setreuid.c
setrlimit64.c
setsockopt.S
setsourcefilter.c
setuid.c
shm_open.c Remove __ASSUME_O_CLOEXEC / O_CLOEXEC conditionals in sysdeps/unix/sysv/linux/. 2014-06-25 20:29:45 +00:00
shm_unlink.c
shmat.c
shmctl.c
shmdt.c
shmget.c
shutdown.S
sigaction.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
siglist.h
signal.c
signalfd.c
sigpending.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
sigprocmask.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
sigqueue.c
sigreturn.c
sigset-cvt-mask.h
sigstack.c
sigsuspend.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
sigtimedwait.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
sigwait.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
sigwaitinfo.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
sizes.h
sleep.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
socketcall.h
socketpair.S
speed.c
statfs64.c
statvfs64.c Avoid stat/fstat in statvfs/fstatvfs (BZ #15132) 2014-05-29 09:41:29 +05:30
statvfs.c Avoid stat/fstat in statvfs/fstatvfs (BZ #15132) 2014-05-29 09:41:29 +05:30
symlinkat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
sync_file_range.c
syscalls.list Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
sysconf.c Add missing #include for MIN/MAX users. 2014-07-01 15:01:24 -07:00
sysctl.c
sysctl.mk
syslog.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
system.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
tcdrain.c
tcflow.c
tcflush.c
tcgetattr.c
tcgetpgrp.c
tcsendbrk.c
tcsetattr.c
tcsetpgrp.c
termio.h
testrtsig.h Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
time.c
timer_create.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
timer_delete.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
timer_getoverr.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
timer_gettime.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
timer_routines.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
timer_settime.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
times.c
timespec_get.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
truncate64.c
tst-clone.c
tst-fanotify.c
tst-getcpu.c
tst-setgetname.c Get rid of nptl/sysdeps/ entirely! 2014-07-07 09:28:38 -07:00
ttyname_r.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
ttyname.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
ualarm.c
umount2.S
umount.S
unlinkat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
unlockpt.c
updwtmp.c
usleep.c
ustat.c
utimensat.c Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00
utimes.c
utmp_file.c
Versions
vfork.c
wait3.c
wait.c
waitid.c
waitpid.c
writev.c Remove __ASSUME_COMPLETE_READV_WRITEV. 2014-06-25 11:31:51 +00:00
xmknod.c
xmknodat.c Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/. 2014-06-20 15:41:35 +00:00
xstat64.c
xstat.c
xstatconv.c
xstatconv.h Remove stray includes of kernel-features.h. 2014-06-25 18:09:01 +00:00