History log of /external/strace/tests/sigaction.awk
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
226bf1c21b8f04f7fa1655979fe00adee1e68b5e 18-Mar-2015 Dmitry V. Levin <ldv@altlinux.org> tests: factor out common awk code

Factor out awk code used in several tests to match.awk.

* tests/match.awk: New file.
* tests/Makefile.am (EXTRA_DIST): Add it.
* tests/caps.awk: Use it.
* tests/getdents.awk: Likewise.
* tests/getrandom.awk: Likewise.
* tests/select.awk: Likewise.
* tests/sigaction.awk: Likewise.
* tests/init.sh (match_awk): Use gawk not awk. Define AWKPATH.
* tests/getdents.test: Likewise.
/external/strace/tests/sigaction.awk
ed7ada24ac4647e56ce1bf3befbaec29a250cd38 13-Jan-2015 Dmitry V. Levin <ldv@altlinux.org> tests: portability fixes

* tests/stat.test: dd obs= is not portable, use bs= instead.
* tests/stat32-v.test: Likewise.
* tests/stat64-v.test: Likewise.
* tests/net.test: Use $* instead of $@ in the quoted string.
* tests/net-fd.test: Likewise.
* tests/statfs.test: Quote { and } in regexps.
* tests/caps.awk: Likewise.
* tests/getdents.awk: Likewise.
* tests/net-yy-accept.awk: Likewise.
* tests/net-yy-connect.awk: Likewise.
* tests/sigaction.awk: Likewise.
* tests/unix-yy-accept.awk: Likewise.
* tests/unix-yy-connect.awk: Likewise.
/external/strace/tests/sigaction.awk
0189ff919bfcb5e8339eb6c8eef0a1801201f647 09-Aug-2014 Mike Frysinger <vapier@gentoo.org> sigaction test: support arches w/out SA_RESTORER and swapped args

Running Linux 3.15 (sparc64) and glibc 2.17 (sparc32) triggers a
rt_sigaction call that does not use SA_RESTORER and has an order
where it inserts a restorer and a size. The current tests don't
support that ordering, so add another regex.

* tests/sigaction.awk: Support no SA_RESTORER and swapped args.
/external/strace/tests/sigaction.awk
38593e942ad4b16b2c3c43ea521167368771cbfb 26-Feb-2014 Dmitry V. Levin <ldv@altlinux.org> Rewrite signal mask decoding without sigset_t

The sigset_t provided by libc is not quite convenient.
In glibc, sigset_t is an array with space for 1024 bits, which is much
more than required: all architectures supported by Linux have only 64
signals except MIPS, which has 128.
In bionic libc, LP32 sigset_t is only 4 bytes long, which is less than
necessary.

With this change, signal mask is decoded without use of intermediate
sigset_t structure, which saves us some cpu cycles in case of glibc with
its inflated sigset_t, and enables build with libcs where sigset_t is
broken.

Old implementation used to check each signal number in the given signal
mask twice using sigismember().
New implementation is based on popcount and next_set_bit() so it's
noticeably faster.

* configure.ac: Check for __builtin_popcount.
* signal.c: Ensure that NSIG >= 32.
(sprintsigmask, sprintsigmask_long, printsigmask): Remove.
(popcount32, sprintsigmask_n): New functions.
(tprintsigmask_addr, sprintsigmask_val, tprintsigmask_val): New macros.
(print_sigset_addr_len, sys_sigsetmask, sys_sigreturn, sys_siggetmask,
sys_sigsuspend, sys_sigprocmask, decode_new_sigaction): Update to use
new signal mask decoding interface.
* tests/sigaction.c (main): Add a test with almost filled signal mask.
* tests/sigaction.awk: Update.
/external/strace/tests/sigaction.awk
b0c2a9dd5db760d2f5125604affcecd9ede24f9d 08-Feb-2014 Dmitry V. Levin <ldv@altlinux.org> tests: tighten sigaction check

* tests/sigaction.awk: Check that input conatins all expected lines.
/external/strace/tests/sigaction.awk
66a15a5bb832032591e57a4fc2c6ec70bce0732a 07-Jan-2014 Dmitry V. Levin <ldv@altlinux.org> tests: add a test for rt_sigaction output

Since "struct sigaction" varies between architectures, rt_sigaction
decoding sometimes produces incorrect output. This test is expected
to catch basic rt_sigaction decoding bugs.

Based on a patch proposed by Chris Dearman.

* tests/sigaction.c: New file.
* tests/sigaction.awk: Likewise.
* tests/sigaction.sh: New test.
* tests/Makefile.am (check_PROGRAMS): Add sigaction.
(TESTS): Add sigaction.sh.
(EXTRA_DIST): Add sigaction.awk.
* tests/.gitignore: Add sigaction.
/external/strace/tests/sigaction.awk