mailing list of musl libc
 help / color / mirror / code / Atom feed
* Failing setjmp of libc-testsuite
@ 2013-04-22 13:01 Timerlan Moldobaev
  2013-04-22 14:24 ` Rich Felker
  0 siblings, 1 reply; 3+ messages in thread
From: Timerlan Moldobaev @ 2013-04-22 13:01 UTC (permalink / raw)
  To: musl


[-- Attachment #1.1: Type: text/plain, Size: 1470 bytes --]

Hi ,

I am running libc-testsuite  linking it statically with musl libraries

Here is my gcc  version:

gcc -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --enable-shared --enable-threads=posix
--enable-checking=release --with-system-zlib --enable-__cxa_atexit
--disable-libunwind-exceptions --enable-libgcj-multifile
--enable-languages=c,c++,objc,obj-c++,java,fortran,ada
--enable-java-awt=gtk --disable-dssi --enable-plugin
--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic
--host=x86_64-redhat-linux
Thread model: posix
gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)

I noticed that setjmp test constantly fails for me with the following error
message:

setjmp.c:51: sigismember(&set, 10)==0 failed: siglongjmp failed to restore
mask
setjmp test failed, 1 error(s)

However if I comment out all the rest functions calls from testsuite.c file
, setjmp alone surprisingly passes as if its failure is somehow connected
to other tests. Specifically memstream is the one that affects
success/failure of setjmp.

Please see attached output of strace -v -s 512 -F -f -o out_fail.txt
./testsuite ( a failing case when only  memstream and setjmp  are present
in testsuite.c file ) and strace -v -s 512 -F -f -o out.txt ./testsuite ( a
success case when only setjmp  is present in  testsuite.c file).

Any ideas why the failure happens ?

Thanks,
Tim.

[-- Attachment #1.2: Type: text/html, Size: 1997 bytes --]

[-- Attachment #2: out.txt --]
[-- Type: text/plain, Size: 682 bytes --]

26978 rt_sigprocmask(SIG_UNBLOCK, [USR1], [], 8) = 0
26978 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
26978 rt_sigprocmask(SIG_BLOCK, [USR1], NULL, 8) = 0
26978 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
26978 rt_sigprocmask(SIG_SETMASK, [], [], 8) = 0
26978 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {c_iflags=0x100, c_oflags=0x5, c_cflags=0xbf, c_lflags=0x803b, c_line=0, c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"}) = 0
26978 writev(1, [{"setjmp", 6}, {" test passed\n", 13}], 2) = 19
26978 writev(1, [{"", 0}, {"\n", 1}], 2) = 1
26978 writev(1, [{"total errors: 0", 15}, {"\n", 1}], 2) = 16
26978 exit_group(0)                     = ?

[-- Attachment #3: out_fail.txt --]
[-- Type: text/plain, Size: 1122 bytes --]

5433  brk(0)                            = 0xb371000
5433  brk(0xb372000)                    = 0xb372000
5433  ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {c_iflags=0x100, c_oflags=0x5, c_cflags=0xbf, c_lflags=0x803b, c_line=0, c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"}) = 0
5433  writev(1, [{"memstream", 9}, {" test passed\n", 13}], 2) = 22
5433  rt_sigprocmask(SIG_UNBLOCK, [USR1], [], 8) = 0
5433  rt_sigprocmask(SIG_SETMASK, [QUIT ILL ABRT BUS USR1 SEGV ALRM STKFLT URG], NULL, 8) = 0
5433  rt_sigprocmask(SIG_BLOCK, [USR1], NULL, 8) = 0
5433  rt_sigprocmask(SIG_SETMASK, [QUIT ILL ABRT BUS USR1 SEGV ALRM STKFLT URG], NULL, 8) = 0
5433  rt_sigprocmask(SIG_SETMASK, [], [QUIT ILL ABRT BUS USR1 SEGV ALRM STKFLT URG], 8) = 0
5433  writev(1, [{"setjmp.c:51: sigismember(&set, 10)==0 failed: siglongjmp failed to restore mask", 79}, {"\n", 1}], 2) = 80
5433  writev(1, [{"setjmp test failed, 1", 21}, {" error(s)\n", 10}], 2) = 31
5433  writev(1, [{"", 0}, {"\n", 1}], 2) = 1
5433  writev(1, [{"total errors: 1", 15}, {"\n", 1}], 2) = 16
5433  exit_group(1)                     = ?

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Failing setjmp of libc-testsuite
  2013-04-22 13:01 Failing setjmp of libc-testsuite Timerlan Moldobaev
@ 2013-04-22 14:24 ` Rich Felker
  2013-04-23  9:22   ` Timerlan Moldobaev
  0 siblings, 1 reply; 3+ messages in thread
From: Rich Felker @ 2013-04-22 14:24 UTC (permalink / raw)
  To: musl

On Mon, Apr 22, 2013 at 04:01:34PM +0300, Timerlan Moldobaev wrote:
> Hi ,
> 
> I am running libc-testsuite  linking it statically with musl libraries
> 
> Here is my gcc  version:
> 
> gcc -v
> Using built-in specs.
> Target: x86_64-redhat-linux
> Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
> --infodir=/usr/share/info --enable-shared --enable-threads=posix
> --enable-checking=release --with-system-zlib --enable-__cxa_atexit
> --disable-libunwind-exceptions --enable-libgcj-multifile
> --enable-languages=c,c++,objc,obj-c++,java,fortran,ada
> --enable-java-awt=gtk --disable-dssi --enable-plugin
> --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic
> --host=x86_64-redhat-linux
> Thread model: posix
> gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)
> 
> I noticed that setjmp test constantly fails for me with the following error
> message:
> 
> setjmp.c:51: sigismember(&set, 10)==0 failed: siglongjmp failed to restore
> mask
> setjmp test failed, 1 error(s)
> 
> However if I comment out all the rest functions calls from testsuite.c file
> , setjmp alone surprisingly passes as if its failure is somehow connected
> to other tests. Specifically memstream is the one that affects
> success/failure of setjmp.
> 
> Please see attached output of strace -v -s 512 -F -f -o out_fail.txt
> ../testsuite ( a failing case when only  memstream and setjmp  are present
> in testsuite.c file ) and strace -v -s 512 -F -f -o out.txt ./testsuite ( a
> success case when only setjmp  is present in  testsuite.c file).
> 
> Any ideas why the failure happens ?
> 
> Thanks,
> Tim.

> 26978 rt_sigprocmask(SIG_UNBLOCK, [USR1], [], 8) = 0
> 26978 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
> 26978 rt_sigprocmask(SIG_BLOCK, [USR1], NULL, 8) = 0
> 26978 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
> 26978 rt_sigprocmask(SIG_SETMASK, [], [], 8) = 0
> 26978 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {c_iflags=0x100, c_oflags=0x5, c_cflags=0xbf, c_lflags=0x803b, c_line=0, c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"}) = 0
> 26978 writev(1, [{"setjmp", 6}, {" test passed\n", 13}], 2) = 19
> 26978 writev(1, [{"", 0}, {"\n", 1}], 2) = 1
> 26978 writev(1, [{"total errors: 0", 15}, {"\n", 1}], 2) = 16
> 26978 exit_group(0)                     = ?

> 5433  brk(0)                            = 0xb371000
> 5433  brk(0xb372000)                    = 0xb372000
> 5433  ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {c_iflags=0x100, c_oflags=0x5, c_cflags=0xbf, c_lflags=0x803b, c_line=0, c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"}) = 0
> 5433  writev(1, [{"memstream", 9}, {" test passed\n", 13}], 2) = 22
> 5433  rt_sigprocmask(SIG_UNBLOCK, [USR1], [], 8) = 0
> 5433  rt_sigprocmask(SIG_SETMASK, [QUIT ILL ABRT BUS USR1 SEGV ALRM STKFLT URG], NULL, 8) = 0
> 5433  rt_sigprocmask(SIG_BLOCK, [USR1], NULL, 8) = 0
> 5433  rt_sigprocmask(SIG_SETMASK, [QUIT ILL ABRT BUS USR1 SEGV ALRM STKFLT URG], NULL, 8) = 0
> 5433  rt_sigprocmask(SIG_SETMASK, [], [QUIT ILL ABRT BUS USR1 SEGV ALRM STKFLT URG], 8) = 0
> 5433  writev(1, [{"setjmp.c:51: sigismember(&set, 10)==0 failed: siglongjmp failed to restore mask", 79}, {"\n", 1}], 2) = 80
> 5433  writev(1, [{"setjmp test failed, 1", 21}, {" error(s)\n", 10}], 2) = 31
> 5433  writev(1, [{"", 0}, {"\n", 1}], 2) = 1
> 5433  writev(1, [{"total errors: 1", 15}, {"\n", 1}], 2) = 16
> 5433  exit_group(1)                     = ?

I just committed a fix; let me know if your problem persists. I also
committed an improvement to the testsuite, which you might want to try
first, which should reliably detect the error you found in musl.

Thanks!

Rich


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Failing setjmp of libc-testsuite
  2013-04-22 14:24 ` Rich Felker
@ 2013-04-23  9:22   ` Timerlan Moldobaev
  0 siblings, 0 replies; 3+ messages in thread
From: Timerlan Moldobaev @ 2013-04-23  9:22 UTC (permalink / raw)
  To: musl

[-- Attachment #1: Type: text/plain, Size: 4042 bytes --]

Hi,

With the latest versions of musl and libc-testsuite the problem
 disappeared.

Thanks,
Tim.


On Mon, Apr 22, 2013 at 5:24 PM, Rich Felker <dalias@aerifal.cx> wrote:

> On Mon, Apr 22, 2013 at 04:01:34PM +0300, Timerlan Moldobaev wrote:
> > Hi ,
> >
> > I am running libc-testsuite  linking it statically with musl libraries
> >
> > Here is my gcc  version:
> >
> > gcc -v
> > Using built-in specs.
> > Target: x86_64-redhat-linux
> > Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
> > --infodir=/usr/share/info --enable-shared --enable-threads=posix
> > --enable-checking=release --with-system-zlib --enable-__cxa_atexit
> > --disable-libunwind-exceptions --enable-libgcj-multifile
> > --enable-languages=c,c++,objc,obj-c++,java,fortran,ada
> > --enable-java-awt=gtk --disable-dssi --enable-plugin
> > --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre
> --with-cpu=generic
> > --host=x86_64-redhat-linux
> > Thread model: posix
> > gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)
> >
> > I noticed that setjmp test constantly fails for me with the following
> error
> > message:
> >
> > setjmp.c:51: sigismember(&set, 10)==0 failed: siglongjmp failed to
> restore
> > mask
> > setjmp test failed, 1 error(s)
> >
> > However if I comment out all the rest functions calls from testsuite.c
> file
> > , setjmp alone surprisingly passes as if its failure is somehow connected
> > to other tests. Specifically memstream is the one that affects
> > success/failure of setjmp.
> >
> > Please see attached output of strace -v -s 512 -F -f -o out_fail.txt
> > ../testsuite ( a failing case when only  memstream and setjmp  are
> present
> > in testsuite.c file ) and strace -v -s 512 -F -f -o out.txt ./testsuite
> ( a
> > success case when only setjmp  is present in  testsuite.c file).
> >
> > Any ideas why the failure happens ?
> >
> > Thanks,
> > Tim.
>
> > 26978 rt_sigprocmask(SIG_UNBLOCK, [USR1], [], 8) = 0
> > 26978 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
> > 26978 rt_sigprocmask(SIG_BLOCK, [USR1], NULL, 8) = 0
> > 26978 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
> > 26978 rt_sigprocmask(SIG_SETMASK, [], [], 8) = 0
> > 26978 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {c_iflags=0x100,
> c_oflags=0x5, c_cflags=0xbf, c_lflags=0x803b, c_line=0,
> c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"})
> = 0
> > 26978 writev(1, [{"setjmp", 6}, {" test passed\n", 13}], 2) = 19
> > 26978 writev(1, [{"", 0}, {"\n", 1}], 2) = 1
> > 26978 writev(1, [{"total errors: 0", 15}, {"\n", 1}], 2) = 16
> > 26978 exit_group(0)                     = ?
>
> > 5433  brk(0)                            = 0xb371000
> > 5433  brk(0xb372000)                    = 0xb372000
> > 5433  ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {c_iflags=0x100,
> c_oflags=0x5, c_cflags=0xbf, c_lflags=0x803b, c_line=0,
> c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"})
> = 0
> > 5433  writev(1, [{"memstream", 9}, {" test passed\n", 13}], 2) = 22
> > 5433  rt_sigprocmask(SIG_UNBLOCK, [USR1], [], 8) = 0
> > 5433  rt_sigprocmask(SIG_SETMASK, [QUIT ILL ABRT BUS USR1 SEGV ALRM
> STKFLT URG], NULL, 8) = 0
> > 5433  rt_sigprocmask(SIG_BLOCK, [USR1], NULL, 8) = 0
> > 5433  rt_sigprocmask(SIG_SETMASK, [QUIT ILL ABRT BUS USR1 SEGV ALRM
> STKFLT URG], NULL, 8) = 0
> > 5433  rt_sigprocmask(SIG_SETMASK, [], [QUIT ILL ABRT BUS USR1 SEGV ALRM
> STKFLT URG], 8) = 0
> > 5433  writev(1, [{"setjmp.c:51: sigismember(&set, 10)==0 failed:
> siglongjmp failed to restore mask", 79}, {"\n", 1}], 2) = 80
> > 5433  writev(1, [{"setjmp test failed, 1", 21}, {" error(s)\n", 10}], 2)
> = 31
> > 5433  writev(1, [{"", 0}, {"\n", 1}], 2) = 1
> > 5433  writev(1, [{"total errors: 1", 15}, {"\n", 1}], 2) = 16
> > 5433  exit_group(1)                     = ?
>
> I just committed a fix; let me know if your problem persists. I also
> committed an improvement to the testsuite, which you might want to try
> first, which should reliably detect the error you found in musl.
>
> Thanks!
>
> Rich
>

[-- Attachment #2: Type: text/html, Size: 5135 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-04-23  9:22 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-04-22 13:01 Failing setjmp of libc-testsuite Timerlan Moldobaev
2013-04-22 14:24 ` Rich Felker
2013-04-23  9:22   ` Timerlan Moldobaev

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).