History log of /external/valgrind/helgrind/tests/safe-pthread.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
e8062a02c2dff5656b8eb8e49b3f79db5baa7d97 24-Aug-2015 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Use sigjmp_buf


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15588 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/helgrind/tests/safe-pthread.h
a82f2621c672c88d54b89597a3ce564dce5c8834 24-Aug-2015 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Restore signal masks when recovering from xend related signals


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15587 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/helgrind/tests/safe-pthread.h
8a39493a0ea9738c544e346c133e5ae565745504 19-Aug-2015 mjw <mjw@a5019735-40e9-0310-863c-91ae7b9d1cf9> Also install sigsegv handler in safe-pthread tests wrapper.

In case we do recognize the xend, but detect it is invalid
(used outside a transaction) we generate a segsegv instead
of a sigill. Handle that in the same way in the test case.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15570 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/helgrind/tests/safe-pthread.h
d46b9110cc95363edea4d8eb20413898ce1a68d9 19-Aug-2015 rhyskidd <rhyskidd@a5019735-40e9-0310-863c-91ae7b9d1cf9> Follow-up fix for r15565: sa_restorer should not be used. n-i-bz.

It is obsolete and not specified by POSIX. See man sigaction on Linux.
No regressions reported.

The following error may be seen on platforms that don't implement this extension:

depbase=`echo tc12_rwl_trivial.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../coregrind -I../../include -I../../VEX/pub -I../../VEX/pub -DVGA_amd64=1 -DVGO_darwin=1 -DVGP_amd64_darwin=1 -DVGPV_amd64_darwin_vanilla=1 -DVGA_SEC_x86=1 -DVGP_SEC_amd64_darwin=1 -Winline -Wall -Wshadow -Wno-long-long -g -fno-stack-protector -Wno-format-extra-args -Wno-literal-range -Wno-tautological-constant-out-of-range-compare -Wno-self-assign -Wno-string-plus-int -Wno-uninitialized -Wno-unused-value -arch x86_64 -MT tc12_rwl_trivial.o -MD -MP -MF $depbase.Tpo -c -o tc12_rwl_trivial.o tc12_rwl_trivial.c &&\
mv -f $depbase.Tpo $depbase.Po
In file included from tc12_rwl_trivial.c:8:
./safe-pthread.h:37:7: error: no member named 'sa_restorer' in 'struct sigaction'
sa.sa_restorer = NULL;
~~ ^
1 error generated.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15569 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/helgrind/tests/safe-pthread.h
60a16f2ead01e564cd480a9806b4a214d6b9067a 19-Aug-2015 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Install the SIGILL handler everywhere so we get consistent
stacks and don't have to worry about __GLIBC_PREREQ not being
defined on all platforms.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15567 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/helgrind/tests/safe-pthread.h
02b13a1023bf6d80d04095e71004d26498758b51 18-Aug-2015 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Attempt to work around issues with xend being executed unconditionally
when a pthread_rwlock is used in an invalid way.

Recent glibcs use transactional memory instructions to do lock ellision
but will sometimes, when locks are used in an invalid way, may calls to
xend on systems which don't support it, on the grounds that the program
is invalid anyway.

So we try and catch and ignore the resulting SIGILL in our tests that
deliberately work with invalid locks.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15565 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/helgrind/tests/safe-pthread.h