This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Tests for minimal signal handler functionality in MINSIGSTKSZ space.
On Wed, Jan 16, 2019 at 10:31 PM H.J. Lu <hjl.tools@gmail.com> wrote:
>
> The new tests failed on AVX512 machines:
>
> Program received signal SIGUSR1, User defined signal 1.
> __GI_raise (sig=sig@entry=10) at ../sysdeps/unix/sysv/linux/raise.c:50
> 50 return ret;
> (gdb) c
> Continuing.
>
> Program received signal SIGSEGV, Segmentation fault.
> _dl_runtime_resolve_xsavec () at ../sysdeps/x86_64/dl-trampoline.h:93
> 93 movq %rax, REGISTER_SAVE_RAX(%rsp)
> (gdb) bt
> #0 _dl_runtime_resolve_xsavec () at ../sysdeps/x86_64/dl-trampoline.h:93
> #1 0x0040248d in handler (unused=<optimized out>) at tst-minsigstksz-4.c:44
> #2 <signal handler called>
> #3 __GI_raise (sig=sig@entry=10) at ../sysdeps/unix/sysv/linux/raise.c:50
> #4 0x004024da in do_test () at tst-minsigstksz-4.c:59
> #5 0x00402cd6 in support_test_main (argc=1, argv=0xffffcef8,
> config=config@entry=0xffffcdf0) at support_test_main.c:350
> #6 0x00402348 in main (argc=<optimized out>, argv=<optimized out>)
> at ../support/test-driver.c:168
> (gdb)
>
> AVX512 needs 2560 bytes to save processor state.
Well, this is the problem that we knew existed and can't fix quickly.
If I'm reading http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html
correctly, we can't introduce new sysconf constants unilaterally
(there is no license to define system-specific _SC_* symbols).
I wonder if this test passes if you run it with LD_BIND_NOW=t in the
environment. Forcing -z now for these tests might be the best we can
do for 2.29.
zw