aboutsummaryrefslogtreecommitdiff
path: root/conform/data/sys
AgeCommit message (Collapse)AuthorFilesLines
2018-10-25conform: XFAIL siginfo_t si_band test on sparc64Florian Weimer1-1/+2
We can use long int on sparcv9, but on sparc64, we must match the int type used by the kernel (and not long int, as in POSIX).
2018-04-20hurd xfails: Add missing bug referencesSamuel Thibault1-0/+2
2018-04-20hurd: XFAIL tests for signal features not implemented yetSamuel Thibault1-5/+5
* conform/data/signal.h-data (SA_SIGINFO, SA_NOCLDWAIT): XFAIL on i386-gnu. * conform/data/sys/wait.h-data (WIFCONTINUED, WEXITED, WSTOPPED, WCONTINUED, WNOWAIT): XFAIL on i386-gnu.
2018-04-19hurd: xfail some structure fields ABI incompatibility with standardsSamuel Thibault5-10/+15
* sysdeps/mach/hurd/i386/Makefile [$(subdir) = conform] (conformtest-xfail-conds): Add i386-gnu. * conform/data/fcntl.h-data (flock.l_type, flock.l_whence): XFAIL for i386-gnu. * conform/data/sys/ipc.h-data (ipc_perm.uid, ipc_perm.gid, ipc_perm.cuid, ipc_perm.cgid): Likewise. * conform/data/sys/msg.h-data (msqid_ds.msg_lspid, msqid_ds.msg_lrpid): Likewise. * conform/data/sys/shm.h-data (shmid_ds.shm_lpid, shmid_ds.shm_cpid): Likewise. * conform/data/sys/stat.h-data (stat.st_dev): Likewise. * conform/data/sys/statvfs.h-data (statvfs.f_fsid): Likewise.
2018-04-18conform sys/un.h: Allow sun_ prefix, not only sun_lenSamuel Thibault1-1/+2
* conform/data/sys/un.h-data: Allow sun_ prefix.
2018-04-18hurd: fix conformity test for sys/un.hSamuel Thibault1-0/+1
sun_len is used by BSD systems, and conformant. * conform/data/sys/un.h-data (struct sockaddr_un): Allow sun_len member.
2017-08-14conformtest: Disable si_value expectation for XPG42.Joseph Myers1-0/+2
This patch corrects the conform/ expectations for sys/wait.h not to expect si_value for XPG4.2. Tested for x86_64. * conform/data/sys/wait.h-data (si_value): Do not expect for XPG42.
2017-06-08conformtest: Correct sys/wait.h expectations for XPG4.Joseph Myers1-6/+6
This patch corrects the conformtest expectations for sys/wait.h for XPG4. This does not change the test results for this header at the makefile level since it fixes some spurious failures for this header while introducing other failures previously hidden by incorrect expectations. However, it shows up issues with stdlib.h for XPG4 defining W* names that are not permitted in this case (previously wrongly allowed; the W* reservation is UX-shaded in XPG4.2 / XSI-shaded in POSIX before 2008); that test is thus XFAILed. Tested for x86_64. * conform/data/sys/wait.h-data (WIFCONTINUED): Do not expect for [XPG4]. (WEXITED): Likewise. (WSTOPPED): Likewise. (WCONTINUED): Likewise. (WNOHANG): Likewise. (WNOWAIT): Likewise. (idtype_t): Likewise. (P_ALL): Likewise. (P_PID): Likewise. (P_PGID): Likewise. (id_t): Likewise. (siginfo_t): Likewise. (wait3): Likewise. (waitid): Likewise. (signal.h): Do not allow header for [XPG4]. (sys/resource.h): Likewise. (si_*): Do not allow for [XPG4]. (W*): Likewise. (P_*): Likewise. (BUS_): Likewise. (CLD_): Likewise. (FPE_): Likewise. (ILL_): Likewise. (POLL_): Likewise. (SEGV_): Likewise. (SI_): Likewise. (TRAP_): Likewise. * conform/Makefile (test-xfail-XPG4/stdlib.h/conform): New variable.
2017-04-27conformtest: Fix XPG standard naming.Joseph Myers12-27/+27
The conform/ tests test -D_XOPEN_SOURCE under the name "XPG3", and -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED under the name "XPG4". That naming is misleading. _XOPEN_SOURCE_EXTENDED actually means XPG4.2, including UX-shaded interfaces. _XOPEN_SOURCE actually means XPG4, or XPG4.2 without UX-shaded interfaces. (Prior XPG versions also used _XOPEN_SOURCE, but without any versioning of the values of the macro, so XPG4.2 without UX-shaded interfaces is the only sensible set of interfaces for glibc to expose given _XOPEN_SOURCE=1 without _XOPEN_SOURCE_EXTENDED defined.) This patch fixes the naming in the conform/ tests, so that what is now called XPG4 is changed to XPG42, and what is now called XPG3 is changed to XPG4. Tested for x86_64 (and verified the complete set of expectations is unchanged by the patch beyond the intended renaming). * conform/GlibcConform.pm (XPG4): Rename standard to XPG42. (XPG3): Rename standard to XPG4. * conform/Makefile: Likewise. * conform/list-header-symbols.pl: Likewise. * conform/data/aio.h-data: Likewise. * conform/data/arpa/inet.h-data: Likewise. * conform/data/complex.h-data: Likewise. * conform/data/ctype.h-data: Likewise. * conform/data/dlfcn.h-data: Likewise. * conform/data/fcntl.h-data: Likewise. * conform/data/fenv.h-data: Likewise. * conform/data/float.h-data: Likewise. * conform/data/fmtmsg.h-data: Likewise. * conform/data/ftw.h-data: Likewise. * conform/data/grp.h-data: Likewise. * conform/data/inttypes.h-data: Likewise. * conform/data/iso646.h-data: Likewise. * conform/data/langinfo.h-data: Likewise. * conform/data/libgen.h-data: Likewise. * conform/data/limits.h-data: Likewise. * conform/data/locale.h-data: Likewise. * conform/data/math.h-data: Likewise. * conform/data/mqueue.h-data: Likewise. * conform/data/ndbm.h-data: Likewise. * conform/data/net/if.h-data: Likewise. * conform/data/netdb.h-data: Likewise. * conform/data/netinet/in.h-data: Likewise. * conform/data/poll.h-data: Likewise. * conform/data/pthread.h-data: Likewise. * conform/data/pwd.h-data: Likewise. * conform/data/sched.h-data: Likewise. * conform/data/search.h-data: Likewise. * conform/data/semaphore.h-data: Likewise. * conform/data/signal.h-data: Likewise. * conform/data/spawn.h-data: Likewise. * conform/data/stdbool.h-data: Likewise. * conform/data/stdint.h-data: Likewise. * conform/data/stdio.h-data: Likewise. * conform/data/stdlib.h-data: Likewise. * conform/data/string.h-data: Likewise. * conform/data/strings.h-data: Likewise. * conform/data/stropts.h-data: Likewise. * conform/data/sys/mman.h-data: Likewise. * conform/data/sys/resource.h-data: Likewise. * conform/data/sys/select.h-data: Likewise. * conform/data/sys/socket.h-data: Likewise. * conform/data/sys/stat.h-data: Likewise. * conform/data/sys/statvfs.h-data: Likewise. * conform/data/sys/time.h-data: Likewise. * conform/data/sys/timeb.h-data: Likewise. * conform/data/sys/types.h-data: Likewise. * conform/data/sys/uio.h-data: Likewise. * conform/data/sys/un.h-data: Likewise. * conform/data/sys/wait.h-data: Likewise. * conform/data/syslog.h-data: Likewise. * conform/data/termios.h-data: Likewise. * conform/data/tgmath.h-data: Likewise. * conform/data/time.h-data: Likewise. * conform/data/ucontext.h-data: Likewise. * conform/data/unistd.h-data: Likewise. * conform/data/utmpx.h-data: Likewise. * conform/data/varargs.h-data: Likewise. * conform/data/wchar.h-data: Likewise. * conform/data/wctype.h-data: Likewise.
2017-04-25conformtest: Allow *_t in sys/socket.h.Joseph Myers1-0/+1
The conformtest expectations in sys/socket.h are missing the standard POSIX allowance for all headers to define *_t names. For XSI standard versions that allowance comes in via the permission to include <sys/uio.h> (for which the expectations properly allow *_t), but for non-XSI POSIX nothing brings in that allowance and spurious namespace failures occur. This patch adds the required permission to the expectations to remove the spurious failures (by itself this does not allow any XFAILs to be removed). Tested for x86_64. * conform/data/sys/socket.h-data (*_t): Allow.
2017-03-20conformtest: Add mips XFAIL for struct stat st_rdev type (bug 21278).Joseph Myers1-1/+2
MIPS o32 struct stat has the wrong type of st_rdev. This patch XFAILs that test in the conformtest expectations for this case (the bug should not be closed without an actual fix, however). Tested with build-many-glibcs.py. [BZ #21278] * sysdeps/unix/sysv/linux/mips/mips32/Makefile [$(subdir) = conform] (conformtest-xfail-conds): Update comment. * conform/data/sys/stat.h-data (stat.st_rdev): XFAIL for mips-o32-linux.
2017-03-18conformtest: XFAIL tv_nsec tests for x32 (bug 16437).Joseph Myers2-2/+4
This patch XFAILs the conformtest tv_nsec tests for x32 so that the incorrect type does not potentially hide other failures. As this is not a fix for the bug, it should remain open in Bugzilla. Tested (compilation only) with build-many-glibcs.py. [BZ #16437] * sysdeps/unix/sysv/linux/x86_64/x32/Makefile [$(subdir) = conform] (conformtest-xfail-conds): New variable. * conform/data/signal.h-data (timespec.tv_nsec): XFAIL for x86_64-x32-linux. * conform/data/sys/select.h-data (timespec.tv_nsec): Likewise. * conform/data/sys/stat.h-data (timespec.tv_nsec): Likewise. * conform/data/time.h-data (timespec.tv_nsec): Likewise.
2017-03-17conformtest: Add mips XFAIL for struct stat st_dev type (bug 17786).Joseph Myers1-1/+2
As noted in bug 17786, MIPS o32 struct stat has the wrong type of st_dev. This patch XFAILs that test in the conformtest expectations for this case (the test still fails after the patch because there's also a similar issue for st_rdev that needs reporting and XFAILing separately, and the bug should not be closed without an actual fix, not just XFAILing). Tested for mips with build-many-glibcs.py. [BZ #17786] * sysdeps/unix/sysv/linux/mips/mips32/Makefile: New file. * conform/data/sys/stat.h-data (stat.st_dev): XFAIL for mips-o32-linux.
2016-06-10Revert {send,sendm,recv,recvm}msg conformance changesAdhemerval Zanella1-3/+5
After some discussion in libc-alpha about this POSIX compliance fix, I see that GLIBC should indeed revert back to previous definition of msghdr and cmsghdr and implementation of sendmsg, recvmsg, sendmmsg, recvmmsg due some reasons: * The possible issue where the syscalls wrapper add the compatibility layer is quite limited in scope and range. And kernel current also add some limits to the values on the internal msghdr and cmsghdr fields: - msghdr::msg_iovlen larger than UIO_MAXIOV (1024) returns EMSGSIZE. - msghdr::msg_controllen larger than INT_MAX returns ENOBUFS. * There is a small performance hit for recvmsg/sendmsg/recmmsg which is neglectable, but it is a big hit for sendmmsg since now instead of calling the syscall for the packed structure, GLIBC is calling multiple sendmsg. This defeat the very existence of the syscall. * It currently breaks libsanitizer build on GCC [1] (I fixed on compiler-rt). However the fix is incomplete because it does add any runtime check since libsanitizer currently does not have any facility to intercept symbols with multiple version [2]. This, along with incorret dlsym/dlvsym return for versioned symbol due another bug [3], makes hard to interpose versioned symbols. Also, current approach of fixing GCC PR#71445 leads to half-baked solutions without versioned symbol interposing. This patch basically reverts commits 2f0dc39029ae08, 222c2d7f4357d66, af7f7c7ec8dea1. I decided to not revert abf29edd4a3918 (Adjust kernel-features.h defaults for recvmsg and sendmsg) mainly because it does not really address the POSIX compliance original issue and also adds some cleanups. Tested on x86, i386, s390, s390x, aarch64, and powerpc64le. [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71445 [2] https://github.com/google/sanitizers/issues/628 [3] https://sourceware.org/bugzilla/show_bug.cgi?id=14932 * conform/data/sys/socket.h-data (msghdr.msg_iovlen): Add xfail-. (msghdr.msg_controllen): Likewise. (cmsghdr.cmsg_len): Likewise. * nptl/Makefile (libpthread-routines): Remove ptw-oldrecvmsg and ptw-oldsendmsg. (CFLAGS-oldrecvmsg.c): Remove rule. (CFLAGS-oldsendmsg.c): Likewise. (CFLAGS-recvmsg.c): Add rule. (CFLAGS-sendmsg.c): Likewise. * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Remove oldrecvmsg, oldsendmsg, oldrecvmmsg, oldsendmmsg. (CFLAGS-recvmsg.c): Remove rule. (CFLAGS-sendmsg.c): Likewise. (CFLAGS-oldrecvmsg.c): Likewise. (CFLAGS-oldsendmsg.c): Likewise. (CFLAGS-recvmmsg.c): Likewise. * sysdeps/unix/sysv/linux/bits/socket.h (msghdr.msg_iovlen): Revert to kernel defined interfaces. (msghdr.msg_controllen): Likewise. (cmsghdr.cmsg_len): Likewise. (msghdr.__glibc_reserved1): Remove member. (msghdr.__glibc_reserved2): Likewise. (cmsghdr.__glibc_reserved1): Likewise. * sysdeps/unix/sysv/linux/oldrecvmmsg.c: Remove file. * sysdeps/unix/sysv/linux/oldrecvmsg.c: Likewise. * sysdeps/unix/sysv/linux/oldsendmmsg.c: Likewise. * sysdeps/unix/sysv/linux/oldsendmsg.c: Likewise. * sysdeps/unix/sysv/linux/recvmmsg.c: Revert back to previous version. * sysdeps/unix/sysv/linux/recvmsg.c: Likewise. * sysdeps/unix/sysv/linux/sendmmsg.c: Likewise. * sysdeps/unix/sysv/linux/sendmsg.c: Likewise. * sysdeps/unix/sysv/linux/aarch64/Versions [libc] (GLIBC_2.24): Remove recvmsg and sendmsg. * sysdeps/unix/sysv/linux/alpha/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/hppa/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/i386/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/m68k/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/microblaze/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/mips/mips32/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n32/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/nios2/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/powerpc/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/sh/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/sparc/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/tile/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/x86_64/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Versions: Remove file * sysdeps/unix/sysv/linux/x86_64/64/Versions: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/Versions: Likewise. * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Remove new 2.24 version for {recv,send,recm,sendm}msg. * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise.
2016-05-25network: recvmsg and sendmsg standard compliance (BZ#16919)Adhemerval Zanella1-5/+3
POSIX specifies that both msghdr::msg_iovlen and msghdr::msg_controllen to be of size int and socklen_t respectively. However Linux defines it as both size_t and for 64-bit it requires some adjustments to make the functions standard compliance. This patch fixes it by creating a temporary header and zeroing the pad fields for 64-bits architecture where size of size_t exceeds the size of the int. Also the new recvmsg and sendmsg implementation is only added on libc, with libpthread only containing a compat symbol. Tested on x86_64, i686, aarch64, armhf, and powerpc64le. * conform/data/sys/socket.h-data (msghdr.msg_iovlen): Remove xfail- and change to correct expected type. (msghdr.msg_controllen): Likewise. (cmsghdr.cmsg_len): Likewise. * sysdeps/unix/sysv/linux/bits/socket.h (msghdr.msg_iovlen): Fix expected POSIX assumption about the size. (msghdr.msg_controllen): Likewise. (msghdr.__glibc_reserved1): Likewise. (msghdr.__glibc_reserved2): Likewise. (cmsghdr.cmsg_len): Likewise. (cmsghdr.__glibc_reserved1): Likewise. * nptl/Makefile (libpthread-routines): Remove ptw-recvmsg and ptw-sendmsg. Add ptw-oldrecvmsg and ptw-oldsendmsg. (CFLAGS-sendmsg.c): Remove rule. (CFLAGS-recvmsg.c): Likewise. (CFLAGS-oldsendmsg.c): Add rule. (CFLAGS-oldrecvmsg.c): Likewise. * sysdeps/unix/sysv/linux/alpha/Versions [libc] (GLIBC_2.24): Add recvmsg and sendmsg. * sysdeps/unix/sysv/linux/aarch64/Version [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/arm/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/hppa/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/i386/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/ia64/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/m68k/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/microblaze/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/mips/mips32/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n32/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/mips/mips64/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/nios2/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/powerpc/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/sh/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/sparc/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/Versions [libc] (GLIBC_2.24): Likewise. ( sysdeps/unix/sysv/linux/tile/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/Versions [libc] (GLIBC_2.24): Likewise. ( sysdeps/unix/sysv/linux/x86_64/64/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/x84_64/Versions [libc] (GLIBC_2.24): Likewise. * sysdeps/unix/sysv/linux/Makefile [$(subdir) = socket)] (sysdep_headers): Add oldrecvmsg and oldsendmsg. (CFLAGS-sendmsg.c): Add rule. (CFLAGS-recvmsg.c): Likewise. (CFLAGS-oldsendmsg.c): Likewise. (CFLAGS-oldrecvmsg.c): Likewise. * sysdeps/unix/sysv/linux/check_native.c (__check_native): Fix msghdr initialization. * sysdeps/unix/sysv/linux/check_pf.c (make_request): Likewise. * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Likewise. * sysdeps/unix/sysv/linux/oldrecvmsg.c: New file. * sysdeps/unix/sysv/linux/oldsendmsg.c: Likewise. * sysdeps/unix/sysv/linux/recvmsg.c (__libc_recvmsg): Adjust msghdr iovlen and controllen fields to adjust to POSIX specification. * sysdeps/unix/sysv/linux/sendmsg.c (__libc_sendmsg): Likewise. * sysdeps/unix/sysv/linux/aarch64/libc.abilist: New version and added recvmsg and sendmsg. * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Likewise. * sysdeps/unix/linux/powerpc/powerpc32/nofpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: Likewise. * sysdepe/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise. Likewise. Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist: Likewise. Likewise. * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise.
2016-05-10conformtest: Correct some sys/stat.h expectations for XPG3.Joseph Myers1-4/+8
This patch fixes various conformtest sys/stat.h expectations that were incorrect for XPG3 (not based on a full review, so not necessarily an exhaustive set of such corrections). Most of these corrections fix spurious failures shown in testing (but that for fchmod introduces a correct failure, as that function is wrongly declared for XPG3, so this doesn't eliminate any XFAILs). Tested for x86_64 and x86. * conform/data/sys/stat.h-data [XPG3] (S_IFLNK): Do not expect. [XPG3] (S_IFSOCK): Likewise. [XPG3] (S_ISVTX): Likewise. [XPG3] (S_ISLNK): Likewise. [XPG3] (S_ISSOCK): Likewise. [XPG3] (fchmod): Likewise. [XPG3] (lstat): Likewise. [XPG3] (mknod): Likewise.
2016-05-10conformtest: Fix st_blksize, st_blocks expectations for XPG3, XPG4.Joseph Myers1-1/+9
The conformtest expectations expect the struct stat fields st_blksize and st_blocks to be of types blksize_t and blkcnt_t. But XPG4 does not have those types, using long instead, and XPG3 does not have these fields at all. This patch adjusts the expectations for those standards, XFAILing them for XPG4 to allow for systems where the typedefs don't correspond to long. Tested for x86_64 and x86. * conform/data/sys/stat.h-data (st_blksize): Do not expect for [XPG3]. Expect type long and XFAIL for [XPG4]. (st_blocks): Likewise.
2016-05-09conformtest: Remove some bogus sys/types.h expectations for XPG3 and XPG4.Joseph Myers1-0/+4
The conformtest tests for sys/types.h for XPG3 and XPG4 fail because of missing blksize_t. This is a bug in the expectations; that type is not part of those standards. This patch stops the tests from expecting it, and some other types that also are not part of XPG3 and XPG4. Tested for x86_64 and x86. * conform/data/sys/types.h-data (blkcnt_t): Do not expect for [XPG3 || XPG4]. (blksize_t): Likewise. (clockid_t): Likewise. * conform/Makefile (test-xfail-XPG3/sys/types.h/conform): Remove variable. (test-xfail-XPG4/sys/types.h/conform): Likewise.
2015-06-19conformtest: Fix pselect expectations.Joseph Myers1-1/+1
conformtest expected pselect for XOPEN2K and POSIX2008 (correctly), but not for XOPEN2K8 (wrongly). This patch fixes the data to expect it for XOPEN2K8 as well. (As for all such fixes based on failures seen from the tests, there is no guarantee that the data is fully correct for a particular standard after the fix; headers and data may well have matching bugs. So far I've only reviewed ISO, ISO99, ISO11 and POSIX data in detail, though I hope eventually to review the others.) Tested for x86_64 and x86. * conform/data/sys/select.h-data [XOPEN2K8] (pselect): Expect. * conform/Makefile (test-xfail-XOPEN2K8/sys/select.h/conform): Remove variable. (test-xfail-XOPEN2K8/sys/time.h/conform): Likewise. (test-xfail-XOPEN2K8/utmpx.h/conform).
2015-06-19conformtest: Support xfail markers on individual assertions.Joseph Myers3-5/+9
Various conformtest tests fail because of known issues, filed in Bugzilla, that are hard to fix (requiring new features, kernel cooperation or involving changing types in ways that may involve care around padding when interfacing to the kernel). Such an issue has the effect of making the whole test for the (standard, header) pair fail, so hiding any other issues with that header for that standard (possibly regressions or architecture-specific issues). This patch adds a mechanism for individual conformtest test expectations to start with xfail-, meaning that a failure of that particular assertion does not cause the whole test to fail at the makefile level and so failure at the makefile level can be used to detect other issues that are likely to be easier to fix. This is similar to the whitelisted symbols in the linknamespace tests, or the marking of particular libm tests as allowing spurious or missing exceptions, for example. The bugs filed in Bugzilla should still be fixed, and the xfail- markers removed at that point, but xfail- renders the tests more useful until that happens. Note that there is no way to add such a marker for the assertion that a header uses only symbols in the namespace of symbols it's meant to use. I don't think there's any need for a way to xfail those namespace tests other than xfailing the whole (standard, header) pair at the makefile level, since they are generally straightforward to fix (add appropriate conditionals on the problem definitions). The xfails in this patch do not necessarily cover all cases of hard-to-fix header bugs filed in Bugzilla that currently show up in conformtest failures; there may be more yet to add for existing open bugs. Tested for x86_64 and x86. * conform/conformtest.pl ($xerrors): New variable. (note_error): New function. (compiletest): New argument $xfail. Use not_error. (runtest): Likewise. (top level): Handle xfail- lines. Update calls to compiletest and runtest. Handle xfail- and optional- in headers listed with allow-header. * conform/data/fcntl.h-data (O_TTY_INIT): Use xfail-. (O_EXEC): Likewise. (O_SEARCH): Likewise. * conform/data/stropts.h-data (ioctl): Likewise. * conform/data/sys/ipc.h-data (ipc_perm.mode): Likewise. * conform/data/sys/sem.h-data (semid_ds.sem_nsems): Likewise. * conform/data/sys/socket.h-data (msghdr.msg_iovlen): Likewise. (msghdr.msg_controllen): Likewise. (cmsghdr.cmsg_len): Likewise. * conform/data/utmpx.h-data (utmpx.ut_tv): Likewise. * conform/Makefile (test-xfail-XPG3/sys/ipc.h/conform): Remove variable. (test-xfail-XPG3/sys/sem.h/conform): Likewise. (test-xfail-XPG4/stropts.h/conform): Likewise. (test-xfail-XPG4/sys/ipc.h/conform): Likewise. (test-xfail-XPG4/sys/sem.h/conform): Likewise. (test-xfail-XPG4/sys/socket.h/conform): Likewise. (test-xfail-UNIX98/stropts.h/conform): Likewise. (test-xfail-UNIX98/sys/ipc.h/conform): Likewise. (test-xfail-UNIX98/sys/sem.h/conform): Likewise. (test-xfail-UNIX98/sys/socket.h/conform): Likewise. (test-xfail-XOPEN2K/stropts.h/conform): Likewise. (test-xfail-XOPEN2K/sys/ipc.h/conform): Likewise. (test-xfail-XOPEN2K/sys/sem.h/conform): Likewise. (test-xfail-XOPEN2K/sys/socket.h/conform): Likewise. (test-xfail-XOPEN2K/utmpx.h/conform): Likewise. (test-xfail-POSIX2008/fcntl.h/conform): Likewise. (test-xfail-POSIX2008/stropts.h/conform): Likewise. (test-xfail-XOPEN2K8/fcntl.h/conform): Likewise. (test-xfail-XOPEN2K8/stropts.h/conform): Likewise. (test-xfail-XOPEN2K8/sys/ipc.h/conform): Likewise. (test-xfail-XOPEN2K8/sys/sem.h/conform): Likewise. (test-xfail-XOPEN2K8/sys/socket.h/conform): Likewise.
2015-05-26struct stat is not posix conformSzabolcs Nagy1-0/+5
On 21/05/15 05:29, Siddhesh Poyarekar wrote: > On Wed, May 20, 2015 at 06:55:02PM +0100, Szabolcs Nagy wrote: >> i guess it's ok for consistency if i fix struct stat64 >> too to use __USE_XOPEN2K8. >> >> i will run some tests and come back with a patch > > I also think it would be appropriate to change this code in other > architectures (microblaze and nacl IIRC) to make all of them > consistent. It is a mechanical enough change IMO that all arch > maintainer acks is not necessary. > here is the patch with consistent __USE_XOPEN2K8 ok to commit? 2015-05-21 Szabolcs Nagy <szabolcs.nagy@arm.com> [BZ #18234] * conform/data/sys/stat.h-data (struct stat): Add tests for st_atim, st_mtim and st_ctim members. * sysdeps/nacl/bits/stat.h (struct stat, struct stat64): Make st_atim, st_ctim, st_mtim visible under __USE_XOPEN2K8 only. * sysdeps/unix/sysv/linux/generic/bits/stat.h (struct stat,): (struct stat64): Likewise. * sysdeps/unix/sysv/linux/ia64/bits/stat.h (struct stat,): (struct stat64): Likewise. * sysdeps/unix/sysv/linux/microblaze/bits/stat.h (struct stat,): (struct stat64): Likewise.
2014-10-14conformtest: clean up POSIX expections for sys/utsname.h, sys/wait.h.Joseph Myers2-4/+10
Continuing the series of patches to clean up conformtest expectations for "POSIX" (1995/6) based on review of the expectations against the standard, this patch cleans up expectations for sys/utsname.h and sys/wait.h. Tested x86_64; a new XFAIL for sys/wait.h is added. * conform/data/sys/utsname.h-data (*_t): Allow. * conform/data/sys/wait.h-data [POSIX] (uid_t): Do not define. [POSIX] (WEXITED): Do not expect constant. [POSIX] (WSTOPPED): Likewise. [POSIX] (WNOHANG): Likewise. [POSIX] (WNOWAIT): Likewise. [POSIX] (siginfo_t): Do not expect type or elements. [POSIX] (pid_t): Do not expect type. [POSIX] (signal.h): Do not allow header. [POSIX] (sys/resource.h): Likewise. [POSIX] (si_*): Do not allow pattern. [POSIX] (W*): Likewise. [POSIX] (P_*): Likewise. [POSIX] (BUS_*): Likewise. [POSIX] (CLD_*): Likewise. [POSIX] (FPE_*): Likewise. [POSIX] (ILL_*): Likewise. [POSIX] (POLL_*): Likewise. [POSIX] (SEGV_*): Likewise. [POSIX] (SI_*): Likewise. [POSIX] (TRAP_*): Likewise. * conform/Makefile (test-xfail-POSIX/sys/wait.h/conform): New variable.
2014-06-11conformtest: clean up POSIX expectations for sys/mman.h, sys/stat.h, ↵Joseph Myers3-2/+9
sys/types.h. Continuing the series of patches to clean up conformtest expectations for "POSIX" (1995/6) based on review of the expectations against the standard, this patch cleans up expectations for sys/mman.h, sys/stat.h and sys/types.h. Tested x86_64; no new XFAILs needed. * conform/data/sys/mman.h-data [POSIX] (size_t): Do not require type. [POSIX] (off_t): Likewise. * conform/data/sys/stat.h-data (S_IRGRP): Require constant. [POSIX] (S_ISBLK): Require macro. [POSIX] (S_ISCHR): Likewise. [POSIX] (S_ISDIR): Likewise. [POSIX] (S_ISFIFO): Likewise. [POSIX] (S_ISREG): Likewise. [POSIX || XPG3 || XPG4 || UNIX98] (S_TYPEISTMO): Do not list optional-macro. * conform/data/sys/types.h-data [POSIX] (blkcnt_t): Do not require type. [POSIX] (time_t): Likewise. [POSIX] (timer_t): Likewise.
2014-03-06conformtest: correct set of standards for which more headers are tested.Joseph Myers2-2/+2
Continuing the corrections to which headers conformtest tests for which standards, this patch corrects conformtest mistakes regarding which headers to test for the remaining standards (XOPEN2K POSIX2008 XOPEN2K8). Tested x86_64. 2014-03-05 Joseph Myers <joseph@codesourcery.com> * conform/data/netinet/tcp.h-data [POSIX2008 || XOPEN2K8]: Enable whole file. * conform/data/sys/timeb.h-data [POSIX2008 || XOPEN2K8]: Disable whole file. * conform/data/sys/uio.h-data [POSIX2008]: Likewise. * conform/data/ucontext.h-data [POSIX2008 || XOPEN2K8]: Likewise.
2014-03-06conformtest: correct set of standards for which some headers are tested.Joseph Myers8-8/