glibc/stdlib
Carlos O'Donell 791b350dc7 Fix tst-setcontext9 for optimized small stacks.
If the compiler reduces the stack usage in function f1 before calling
into function f2, then when we swapcontext back to f1 and continue
execution we may overwrite registers that were spilled to the stack
while f2 was executing.  Later when we return to f2 the corrupt
registers will be reloaded from the stack and the test will crash.  This
was most commonly observed on i686 with __x86.get_pc_thunk.dx and
needing to save and restore $edx.  Overall i686 has few registers and
the spilling to the stack is bound to happen, therefore the solution to
making this test robust is to split function f1 into two parts f1a and
f1b, and allocate f1b it's own stack such that subsequent execution does
not overwrite the stack in use by function f2.

Tested on i686 and x86_64.

Signed-off-by: Carlos O'Donell <carlos@redhat.com>
2018-09-19 22:33:07 -04:00
..
bits
sys
a64l.c
abort.c
abs.c
add_n.c
addmul_1.c
alloca.h
at_quick_exit.c
atexit.c
atof.c
atoi.c
atol.c
atoll.c
bsearch.c
bug-fmtmsg1.c
bug-getcontext.c
bug-strtod2.c
bug-strtod.c
canonicalize.c Fix BZ 22786: integer addition overflow may cause stack buffer overflow 2018-05-08 18:12:41 -07:00
cmp.c
cxa_at_quick_exit.c
cxa_atexit.c
cxa_finalize.c
cxa_thread_atexit_impl.c
dbl2mpn.c
Depend
div.c
divmod_1.c
divrem.c
drand48_r.c
drand48-iter.c
drand48.c
erand48_r.c
erand48.c
errno.h
exit.c
exit.h
fmtmsg.c
fmtmsg.h
fpioconst.c
fpioconst.h
gen-fpioconst.c
gen-tst-strtod-round.c Fix strtod overflow detection (bug 23279). 2018-06-13 16:06:14 +00:00
getcontext.c
getentropy.c
getenv.c
getrandom.c
getsubopt.c
gmp-impl.h
gmp.h
grouping.c
grouping.h
groupingwc.c
inlines.c
isomac.c Avoid insecure usage of tmpnam in tests. 2018-07-18 21:04:12 +00:00
jrand48_r.c
jrand48.c
l64a.c
labs.c
lcong48_r.c
lcong48.c
ldbl2mpn.c
ldiv.c
llabs.c
lldiv.c
longlong.h
lrand48_r.c
lrand48.c
lshift.c
makecontext.c
Makefile Add tests for setcontext on the context from makecontext 2018-07-25 05:13:16 -07:00
mblen.c
mbstowcs.c mbstowcs: Remove outdated comment 2018-08-13 14:05:01 +02:00
mbtowc.c
mod_1.c
monetary.h
mp_clz_tab.c
mpn2dbl.c
mpn2flt.c
mpn2ldbl.c
mrand48_r.c
mrand48.c
msort.c
mul_1.c
mul_n.c
mul.c
nrand48_r.c
nrand48.c
old_atexit.c
on_exit.c
putenv.c
qsort.c
quick_exit.c
rand_r.c
rand.c
random_r.c Fix signed integer overflow in random_r (bug 17343). 2018-03-20 18:25:24 +00:00
random.c
rpmatch.c
rshift.c
secure-getenv.c
seed48_r.c
seed48.c
setcontext.c
setenv.c
srand48_r.c
srand48.c
stdlib.h reallocarray: Declare under _DEFAULT_SOURCE 2018-08-30 14:14:53 +02:00
strfmon_l.c
strfmon.c
strfrom-skeleton.c
strfromd.c
strfromf.c
strfroml.c
strtod_l.c Fix sign of NaN returned by strtod (bug 23007). 2018-06-15 17:35:17 +00:00
strtod_nan_main.c math: Merge strtod_nan_*.h into math-type-macros-*.h 2018-05-16 06:03:08 +02:00
strtod_nan_narrow.h
strtod_nan_wide.h
strtod_nan.c math: Merge strtod_nan_*.h into math-type-macros-*.h 2018-05-16 06:03:08 +02:00
strtod.c
strtof_l.c
strtof_nan.c math: Merge strtod_nan_*.h into math-type-macros-*.h 2018-05-16 06:03:08 +02:00
strtof.c
strtoimax.c
strtol_l.c
strtol.c
strtold_l.c
strtold_nan.c math: Merge strtod_nan_*.h into math-type-macros-*.h 2018-05-16 06:03:08 +02:00
strtold.c
strtoll_l.c
strtoll.c
strtoul_l.c
strtoul.c
strtoull_l.c
strtoull.c
strtoumax.c
sub_n.c
submul_1.c
swapcontext.c
system.c
tens_in_limb.c
test-a64l.c
test-at_quick_exit-race.c
test-atexit-race-common.c
test-atexit-race.c
test-bz22786.c Test stdlib/test-bz22786 exits now with unsupported if malloc fails. 2018-08-30 08:44:32 +02:00
test-canon2.c
test-canon.c
test-cxa_atexit-race.c
test-dlclose-exit-race-helper.c
test-dlclose-exit-race.c
test-on_exit-race.c
testdiv.c
testdiv.input
testmb2.c
testmb.c
testrand.c
testsort.c
tst-at_quick_exit.c
tst-atexit-common.c
tst-atexit.c
tst-atof1.c
tst-atof2.c
tst-bsearch.c
tst-cxa_atexit.c
tst-empty-env.c
tst-environ.c
tst-fmtmsg.c
tst-fmtmsg.sh
tst-getrandom.c
tst-limits.c
tst-makecontext2.c
tst-makecontext3.c
tst-makecontext-align.c
tst-makecontext.c
tst-on_exit.c
tst-putenv.c
tst-putenvmod.c
tst-qsort2.c
tst-qsort.c
tst-quick_exit.cc
tst-rand48-2.c
tst-rand48.c
tst-random2.c
tst-random.c
tst-secure-getenv.c
tst-setcontext2.c
tst-setcontext3.c
tst-setcontext3.sh
tst-setcontext4.c Add another test for setcontext 2018-07-25 04:57:21 -07:00
tst-setcontext5.c Add a test for multiple setcontext calls 2018-07-25 05:00:30 -07:00
tst-setcontext6.c Add tests for setcontext on the context from makecontext 2018-07-25 05:13:16 -07:00
tst-setcontext7.c Add tests for setcontext on the context from makecontext 2018-07-25 05:13:16 -07:00
tst-setcontext8.c Add tests for setcontext on the context from makecontext 2018-07-25 05:13:16 -07:00
tst-setcontext9.c Fix tst-setcontext9 for optimized small stacks. 2018-09-19 22:33:07 -04:00
tst-setcontext.c
tst-strfmon_l.c Add long double input for strfmon test 2018-06-30 06:54:34 +05:30
tst-strfrom-locale.c
tst-strfrom.c
tst-strfrom.h
tst-strtod1i.c
tst-strtod2.c
tst-strtod3.c
tst-strtod4.c
tst-strtod5.c
tst-strtod5i.c
tst-strtod6.c
tst-strtod-nan-locale-main.c
tst-strtod-nan-locale.c
tst-strtod-nan-sign-main.c Add tests for sign of NaN returned by strtod (bug 23007). 2018-06-15 17:36:21 +00:00
tst-strtod-nan-sign.c Add tests for sign of NaN returned by strtod (bug 23007). 2018-06-15 17:36:21 +00:00
tst-strtod-overflow.c
tst-strtod-round-data Fix strtod overflow detection (bug 23279). 2018-06-13 16:06:14 +00:00
tst-strtod-round-data.h Fix strtod overflow detection (bug 23279). 2018-06-13 16:06:14 +00:00
tst-strtod-round-skeleton.c Fix strtod overflow detection (bug 23279). 2018-06-13 16:06:14 +00:00
tst-strtod-round.c
tst-strtod-underflow.c
tst-strtod.c
tst-strtod.h
tst-strtol-locale-main.c
tst-strtol-locale.c
tst-strtol.c
tst-strtoll.c
tst-swapcontext1.c Add a test for multiple makecontext calls 2018-07-25 04:54:00 -07:00
tst-system.c
tst-thread-quick_exit.cc
tst-tininess.c
tst-tls-atexit-lib.c
tst-tls-atexit-nodelete.c
tst-tls-atexit.c
tst-unsetenv1.c
tst-width-stdint.c
tst-width.c
tst-xpg-basename.c
ucontext.h Add <bits/indirect-return.h> 2018-07-24 07:55:47 -07:00
udiv_qrnnd.c
Versions Move __fentry__ version definition to sysdeps/{i386,x86_64} 2018-08-10 09:07:44 +02:00
wcstoimax.c
wcstombs.c
wcstoumax.c
wctomb.c
xpg_basename.c