mirror of
https://sourceware.org/git/glibc.git
synced 2025-01-09 02:40:08 +00:00
9714012ca0
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. |
||
---|---|---|
.. | ||
data | ||
check-header-lists.sh | ||
conformtest.pl | ||
GlibcConform.pm | ||
linknamespace.pl | ||
list-header-symbols.pl | ||
Makefile |