glibc/sysdeps/pthread
Joseph Myers 9714012ca0 Fix aio_* pread namespace (bug 18519).
aio_* bring in references to pread, which isn't in all the standards
containing aio_* (as a reference from one library to another, this is
a bug for dynamic as well as static linking).  This patch fixes this
by using __libc_pread instead, exporting that function from libc at
symbol version GLIBC_PRIVATE; the code, with conditionals that may
call either __pread64 or __libc_pread, becomes exactly analogous to
that elsewhere in the same file that may call either __pwrite64 or
__libc_pwrite.

Tested for x86_64 and x86 (testsuite, and comparison of disassembly of
installed shared libraries).  libc changes because of the PLT entry
for the newly exported __libc_pread; librt changes because of
assertion line numbers and PLT rearrangement; other stripped installed
shared libraries do not change.

	[BZ #18519]
	* posix/Versions (libc): Export __libc_pread at version
	GLIBC_PRIVATE.
	* sysdeps/pthread/aio_misc.c (handle_fildes_io): Call __libc_pread
	instead of pread.
	* conform/Makefile (test-xfail-POSIX/aio.h/linknamespace): Remove
	variable.
2015-06-12 17:34:11 +00:00
..
bits Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
Makeconfig Clean up definition of _LIBC_REENTRANT and _IO_MTSAFE_IO. 2012-08-17 09:35:15 -07:00
Makefile Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
Versions lio_listio should emit an event for each individual request in 2006-01-03 23:19:03 +00:00
aio_cancel.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aio_error.c Fix aio_error thread-safety. 2015-03-06 11:32:24 +01:00
aio_fsync.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aio_misc.c Fix aio_* pread namespace (bug 18519). 2015-06-12 17:34:11 +00:00
aio_misc.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aio_notify.c Some #include cleanup in aio/timer code. 2015-01-08 15:38:15 -08:00
aio_read.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aio_read64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aio_suspend.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aio_write.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aio_write64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
allocalim.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
flockfile.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
ftrylockfile.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
funlockfile.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
lio_listio.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
lio_listio64.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
posix-timer.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
semaphore.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
timer_create.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
timer_delete.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
timer_getoverr.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
timer_gettime.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
timer_routines.c Deglobalize internal variables in timer_routines.c. 2015-03-02 15:44:27 -08:00
timer_settime.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-timer.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00