Source: glibc Version: 2.24-2 Severity: normal Tags: patch Dear Maintainer,
As noted in previous mail, glibc fails to build due to the following test failures: FAIL: nptl/tst-cancel-self FAIL: nptl/tst-cancel-self-cancelstate FAIL: nptl/tst-cancel12 FAIL: nptl/tst-cancel14 FAIL: nptl/tst-cancelx12 FAIL: nptl/tst-cancelx14 See full log here: https://buildd.debian.org/status/fetch.php?pkg=glibc&arch=hppa&ver=2.24-2&stamp=1472961842 Build with patch is here: https://sourceware.org/ml/libc-alpha/2016-09/msg00193.html The attached patch fixes these failures and some others which are xfailed. It has been submitted upstream: https://sourceware.org/ml/libc-alpha/2016-09/msg00193.html I have also attached a patch which updates the hppa tests that need to be xfailed. Please add these changes. Thanks, Dave -- System Information: Debian Release: stretch/sid APT prefers buildd-unstable APT policy: (500, 'buildd-unstable'), (500, 'unstable') Architecture: hppa (parisc64) Kernel: Linux 4.7.3+ (SMP w/4 CPU cores) Locale: LANG=C, LC_CTYPE=C (charmap=UTF-8) (ignored: LC_ALL set to en_US.utf8) Shell: /bin/sh linked to /bin/dash Init: sysvinit (via /sbin/init)
diff --git a/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h b/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h index cafc752..f239408 100644 --- a/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h +++ b/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h @@ -62,12 +62,11 @@ ENTRY (__##syscall_name##_nocancel) \ DOARGS_##args ASM_LINE_SEP \ stwm TREG, 64(%sp) ASM_LINE_SEP \ + .cfi_def_cfa_offset -64 ASM_LINE_SEP \ .cfi_offset TREG, 0 ASM_LINE_SEP \ - .cfi_adjust_cfa_offset 64 ASM_LINE_SEP \ stw %sp, -4(%sp) ASM_LINE_SEP \ - .cfi_offset 30, -4 ASM_LINE_SEP \ stw %r19, -32(%sp) ASM_LINE_SEP \ - .cfi_offset 19, -32 ASM_LINE_SEP \ + .cfi_offset 19, 32 ASM_LINE_SEP \ /* Save r19 */ ASM_LINE_SEP \ SAVE_PIC(TREG) ASM_LINE_SEP \ /* Do syscall, delay loads # */ ASM_LINE_SEP \ @@ -91,21 +90,19 @@ L(pre_nc_end): ASM_LINE_SEP \ /* No need to LOAD_PIC */ ASM_LINE_SEP \ /* Undo frame */ ASM_LINE_SEP \ ldwm -64(%sp),TREG ASM_LINE_SEP \ - .cfi_adjust_cfa_offset -64 ASM_LINE_SEP \ /* Restore rp before exit */ ASM_LINE_SEP \ ldw -20(%sp), %rp ASM_LINE_SEP \ - .cfi_restore 2 ASM_LINE_SEP \ ret ASM_LINE_SEP \ END(__##syscall_name##_nocancel) ASM_LINE_SEP \ /**********************************************/ASM_LINE_SEP \ ENTRY (name) \ DOARGS_##args ASM_LINE_SEP \ stwm TREG, 64(%sp) ASM_LINE_SEP \ - .cfi_adjust_cfa_offset 64 ASM_LINE_SEP \ + .cfi_def_cfa_offset -64 ASM_LINE_SEP \ + .cfi_offset TREG, 0 ASM_LINE_SEP \ stw %sp, -4(%sp) ASM_LINE_SEP \ - .cfi_offset 30, -4 ASM_LINE_SEP \ stw %r19, -32(%sp) ASM_LINE_SEP \ - .cfi_offset 19, -32 ASM_LINE_SEP \ + .cfi_offset 19, 32 ASM_LINE_SEP \ /* Done setting up frame, continue... */ ASM_LINE_SEP \ SINGLE_THREAD_P ASM_LINE_SEP \ cmpib,<>,n 0,%ret0,L(pseudo_cancel) ASM_LINE_SEP \ @@ -168,40 +165,32 @@ L(pre_end): ASM_LINE_SEP \ /* No need to LOAD_PIC */ ASM_LINE_SEP \ /* Undo frame */ ASM_LINE_SEP \ ldwm -64(%sp),TREG ASM_LINE_SEP \ - .cfi_adjust_cfa_offset -64 ASM_LINE_SEP \ /* Restore rp before exit */ ASM_LINE_SEP \ - ldw -20(%sp), %rp ASM_LINE_SEP \ - .cfi_restore 2 ASM_LINE_SEP + ldw -20(%sp), %rp ASM_LINE_SEP /* Save arguments into our frame */ # define PUSHARGS_0 /* nothing to do */ # define PUSHARGS_1 PUSHARGS_0 stw %r26, -36(%sr0,%sp) ASM_LINE_SEP \ - .cfi_offset 26, -36 ASM_LINE_SEP + .cfi_offset 26, 28 ASM_LINE_SEP # define PUSHARGS_2 PUSHARGS_1 stw %r25, -40(%sr0,%sp) ASM_LINE_SEP \ - .cfi_offset 25, -40 ASM_LINE_SEP + .cfi_offset 25, 24 ASM_LINE_SEP # define PUSHARGS_3 PUSHARGS_2 stw %r24, -44(%sr0,%sp) ASM_LINE_SEP \ - .cfi_offset 24, -44 ASM_LINE_SEP + .cfi_offset 24, 20 ASM_LINE_SEP # define PUSHARGS_4 PUSHARGS_3 stw %r23, -48(%sr0,%sp) ASM_LINE_SEP \ - .cfi_offset 23, -48 ASM_LINE_SEP + .cfi_offset 23, 16 ASM_LINE_SEP # define PUSHARGS_5 PUSHARGS_4 stw %r22, -52(%sr0,%sp) ASM_LINE_SEP \ - .cfi_offset 22, -52 ASM_LINE_SEP + .cfi_offset 22, 12 ASM_LINE_SEP # define PUSHARGS_6 PUSHARGS_5 stw %r21, -56(%sr0,%sp) ASM_LINE_SEP \ - .cfi_offset 21, -56 ASM_LINE_SEP + .cfi_offset 21, 8 ASM_LINE_SEP /* Bring them back from the stack */ # define POPARGS_0 /* nothing to do */ -# define POPARGS_1 POPARGS_0 ldw -36(%sr0,%sp), %r26 ASM_LINE_SEP \ - .cfi_restore 26 ASM_LINE_SEP -# define POPARGS_2 POPARGS_1 ldw -40(%sr0,%sp), %r25 ASM_LINE_SEP \ - .cfi_restore 25 ASM_LINE_SEP -# define POPARGS_3 POPARGS_2 ldw -44(%sr0,%sp), %r24 ASM_LINE_SEP \ - .cfi_restore 24 ASM_LINE_SEP -# define POPARGS_4 POPARGS_3 ldw -48(%sr0,%sp), %r23 ASM_LINE_SEP \ - .cfi_restore 23 ASM_LINE_SEP -# define POPARGS_5 POPARGS_4 ldw -52(%sr0,%sp), %r22 ASM_LINE_SEP \ - .cfi_restore 22 ASM_LINE_SEP -# define POPARGS_6 POPARGS_5 ldw -56(%sr0,%sp), %r21 ASM_LINE_SEP \ - .cfi_restore 21 ASM_LINE_SEP +# define POPARGS_1 POPARGS_0 ldw -36(%sr0,%sp), %r26 ASM_LINE_SEP +# define POPARGS_2 POPARGS_1 ldw -40(%sr0,%sp), %r25 ASM_LINE_SEP +# define POPARGS_3 POPARGS_2 ldw -44(%sr0,%sp), %r24 ASM_LINE_SEP +# define POPARGS_4 POPARGS_3 ldw -48(%sr0,%sp), %r23 ASM_LINE_SEP +# define POPARGS_5 POPARGS_4 ldw -52(%sr0,%sp), %r22 ASM_LINE_SEP +# define POPARGS_6 POPARGS_5 ldw -56(%sr0,%sp), %r21 ASM_LINE_SEP # if IS_IN (libpthread) # ifdef PIC diff --git a/sysdeps/unix/sysv/linux/hppa/sysdep.h b/sysdeps/unix/sysv/linux/hppa/sysdep.h index b459f0a..00cb366 100644 --- a/sysdeps/unix/sysv/linux/hppa/sysdep.h +++ b/sysdeps/unix/sysv/linux/hppa/sysdep.h @@ -49,11 +49,9 @@ to another function */ #define TREG 4 #define SAVE_PIC(SREG) \ - copy %r19, SREG ASM_LINE_SEP \ - .cfi_register 19, SREG + copy %r19, SREG #define LOAD_PIC(LREG) \ - copy LREG , %r19 ASM_LINE_SEP \ - .cfi_restore 19 + copy LREG , %r19 /* Inline assembly defines */ #define TREG_ASM "%r4" /* Cant clobber r3, it holds framemarker */ #define SAVE_ASM_PIC " copy %%r19, %" TREG_ASM "\n" @@ -292,12 +290,11 @@ #define DO_CALL(syscall_name, args) \ /* Create a frame */ ASM_LINE_SEP \ stwm TREG, 64(%sp) ASM_LINE_SEP \ + .cfi_def_cfa_offset -64 ASM_LINE_SEP \ .cfi_offset TREG, 0 ASM_LINE_SEP \ - .cfi_adjust_cfa_offset 64 ASM_LINE_SEP \ stw %sp, -4(%sp) ASM_LINE_SEP \ - .cfi_offset 30, -4 ASM_LINE_SEP \ stw %r19, -32(%sp) ASM_LINE_SEP \ - .cfi_offset 19, -32 ASM_LINE_SEP \ + .cfi_offset 19, 32 ASM_LINE_SEP \ /* Save r19 */ ASM_LINE_SEP \ SAVE_PIC(TREG) ASM_LINE_SEP \ /* Do syscall, delay loads # */ ASM_LINE_SEP \ @@ -320,10 +317,8 @@ L(pre_end): ASM_LINE_SEP \ /* Restore our frame, restoring TREG */ ASM_LINE_SEP \ ldwm -64(%sp), TREG ASM_LINE_SEP \ - .cfi_adjust_cfa_offset -64 ASM_LINE_SEP \ /* Restore return pointer */ ASM_LINE_SEP \ - ldw -20(%sp),%rp ASM_LINE_SEP \ - .cfi_restore 2 ASM_LINE_SEP + ldw -20(%sp),%rp ASM_LINE_SEP /* We do nothing with the return, except hand it back to someone else */ #undef DO_CALL_NOERRNO
--- testsuite-xfail-debian.mk.save 2016-09-03 15:08:01.000000000 -0400 +++ testsuite-xfail-debian.mk 2016-09-11 19:15:47.547712824 -0400 @@ -100,88 +100,23 @@ # hppa ###################################################################### ifeq ($(config-machine)-$(config-os),hppa-linux-gnu) -test-xfail-POSIX/aio.h/conform = yes -test-xfail-POSIX/mqueue.h/conform = yes -test-xfail-POSIX/pthread.h/conform = yes -test-xfail-POSIX/regex.h/conform = yes -test-xfail-POSIX/semaphore.h/conform = yes -test-xfail-POSIX/signal.h/conform = yes -test-xfail-POSIX/sys/mman.h/conform = yes -test-xfail-POSIX/sys/types.h/conform = yes -test-xfail-POSIX2008/aio.h/conform = yes -test-xfail-POSIX2008/mqueue.h/conform = yes -test-xfail-POSIX2008/pthread.h/conform = yes -test-xfail-POSIX2008/regex.h/conform = yes -test-xfail-POSIX2008/semaphore.h/conform = yes -test-xfail-POSIX2008/spawn.h/conform = yes -test-xfail-POSIX2008/sys/mman.h/conform = yes -test-xfail-POSIX2008/sys/types.h/conform = yes -test-xfail-UNIX98/aio.h/conform = yes -test-xfail-UNIX98/ftw.h/conform = yes -test-xfail-UNIX98/mqueue.h/conform = yes -test-xfail-UNIX98/pthread.h/conform = yes -test-xfail-UNIX98/regex.h/conform = yes -test-xfail-UNIX98/semaphore.h/conform = yes -test-xfail-UNIX98/sys/mman.h/conform = yes -test-xfail-UNIX98/sys/types.h/conform = yes -test-xfail-UNIX98/sys/uio.h/conform = yes -test-xfail-XOPEN2K/ftw.h/conform = yes -test-xfail-XOPEN2K/pthread.h/conform = yes -test-xfail-XOPEN2K/regex.h/conform = yes -test-xfail-XOPEN2K/spawn.h/conform = yes -test-xfail-XOPEN2K/stdlib.h/conform = yes -test-xfail-XOPEN2K/sys/mman.h/conform = yes -test-xfail-XOPEN2K/sys/types.h/conform = yes -test-xfail-XOPEN2K/sys/uio.h/conform = yes -test-xfail-XOPEN2K8/aio.h/conform = yes -test-xfail-XOPEN2K8/ftw.h/conform = yes -test-xfail-XOPEN2K8/mqueue.h/conform = yes -test-xfail-XOPEN2K8/pthread.h/conform = yes -test-xfail-XOPEN2K8/regex.h/conform = yes -test-xfail-XOPEN2K8/semaphore.h/conform = yes -test-xfail-XOPEN2K8/spawn.h/conform = yes -test-xfail-XOPEN2K8/stdlib.h/conform = yes -test-xfail-XOPEN2K8/sys/mman.h/conform = yes -test-xfail-XOPEN2K8/sys/types.h/conform = yes -test-xfail-XOPEN2K8/sys/uio.h/conform = yes -test-xfail-XPG4/sys/mman.h/conform = yes test-xfail-check-execstack = yes test-xfail-check-localplt = yes test-xfail-check-textrel = yes -test-xfail-malloc/tst-trim1 = yes -test-xfail-tst-addr1 = yes -test-xfail-tst-attr3 = yes test-xfail-tst-audit2 = yes test-xfail-tst-backtrace2 = yes test-xfail-tst-backtrace3 = yes test-xfail-tst-backtrace4 = yes test-xfail-tst-backtrace5 = yes test-xfail-tst-backtrace6 = yes -test-xfail-tst-cancel3 = yes -test-xfail-tst-cancel4 = yes -test-xfail-tst-cancel5 = yes -test-xfail-tst-cancel9 = yes -test-xfail-tst-cancelx20 = yes -test-xfail-tst-cancelx21 = yes -test-xfail-tst-cancelx3 = yes -test-xfail-tst-cancelx4 = yes -test-xfail-tst-cancelx5 = yes -test-xfail-tst-cancelx9 = yes -test-xfail-tst-cleanup4 = yes test-xfail-tst-cleanupx4 = yes -test-xfail-tst-cputimer2 = yes -test-xfail-tst-cputimer3 = yes -test-xfail-tst-longjmp_chk2 = yes test-xfail-tst-makecontext = yes -test-xfail-tst-mqueue8 = yes -test-xfail-tst-mqueue8x = yes test-xfail-tst-protected1a = yes test-xfail-tst-protected1b = yes test-xfail-tst-setcontext2 = yes -test-xfail-tst-setcontext3 = yes -test-xfail-tst-stack1 = yes -test-xfail-tst-stack4 = yes -test-xfail-tst-trim1 = yes +# The following tests sometimes fail due to timeouts. +test-xfail-tst-barrier5 = yes +test-xfail-tst-cond25 = yes endif