testsuite: Fix PR threads/19422 regression + Guile regression
The PR threads/19422 patchset added a new regression. Additionally below it there was already a regression if --with-guile (which is default if Guile is found) was used. racy case #1: (xgdb) PASS: gdb.gdb/selftest.exp: Set xgdb_prompt ^M Thread 1 "xgdb" received signal SIGINT, Interrupt.^M 0x00007ffff583bfdd in poll () from /lib64/libc.so.6^M (gdb) FAIL: gdb.gdb/selftest.exp: send ^C to child process signal SIGINT^M Continuing with signal SIGINT.^M ^C^M Thread 1 "xgdb" received signal SIGINT, Interrupt.^M 0x00007ffff5779da0 in sigprocmask () from /lib64/libc.so.6^M (gdb) PASS: gdb.gdb/selftest.exp: send SIGINT signal to child process backtrace^M errstring=errstring@entry=0x7e0e6c "", mask=mask@entry=RETURN_MASK_ALL) at exceptions.c:240^M errstring=errstring@entry=0x7e0e6c "", mask=mask@entry=RETURN_MASK_ALL) at exceptions.c:240^M (gdb) PASS: gdb.gdb/selftest.exp: backtrace through signal handler racy case #2: (xgdb) PASS: gdb.gdb/selftest.exp: Set xgdb_prompt ^M Thread 1 "xgdb" received signal SIGINT, Interrupt.^M 0x00007ffff583bfdd in poll () from /lib64/libc.so.6^M (gdb) FAIL: gdb.gdb/selftest.exp: send ^C to child process signal SIGINT^M Continuing with signal SIGINT.^M ^C^M Thread 2 "xgdb" received signal SIGINT, Interrupt.^M [Switching to Thread 0x7ffff3b7f700 (LWP 13227)]^M 0x00007ffff6b88b10 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0^M (gdb) PASS: gdb.gdb/selftest.exp: send SIGINT signal to child process backtrace^M (gdb) FAIL: gdb.gdb/selftest.exp: backtrace through signal handler Pedro Alves: Not all targets support thread names, and even those that do, not all use the program name as default thread name -- I think that's only true for GNU/Linux, actually. So I think it's best to not expect that, like: -re "(Thread .*|Program) received signal SIGINT.*$gdb_prompt $" { gdb/testsuite/ChangeLog 2016-01-22 Jan Kratochvil <jan.kratochvil@redhat.com> Fix testsuite compatibility with Guile. * gdb.gdb/selftest.exp (send ^C to child process): Accept also Thread. (thread 1): New test for backtrace through signal handler.
This commit is contained in:
parent
b2bae2f79b
commit
31d765d380
2 changed files with 12 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
|||
2016-01-22 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
Fix testsuite compatibility with Guile.
|
||||
* gdb.gdb/selftest.exp (send ^C to child process): Accept also Thread.
|
||||
(thread 1): New test for backtrace through signal handler.
|
||||
|
||||
2016-01-22 Yao Qi <yao.qi@linaro.org>
|
||||
|
||||
PR testsuite/19491
|
||||
|
|
|
@ -436,8 +436,9 @@ proc test_with_self { executable } {
|
|||
if ![target_info exists gdb,nointerrupts] {
|
||||
set description "send ^C to child process"
|
||||
send_gdb "\003"
|
||||
# "Thread 1" is displayed iff Guile support is linked in.
|
||||
gdb_expect {
|
||||
-re "Program received signal SIGINT.*$gdb_prompt $" {
|
||||
-re "(Thread 1 .*|Program) received signal SIGINT.*$gdb_prompt $" {
|
||||
pass "$description"
|
||||
}
|
||||
-re ".*$gdb_prompt $" {
|
||||
|
@ -454,6 +455,10 @@ proc test_with_self { executable } {
|
|||
"Continuing with signal SIGINT.*" \
|
||||
"$description"
|
||||
|
||||
# Switch back to the GDB thread if Guile support is linked in.
|
||||
# "signal SIGINT" could also switch the current thread.
|
||||
gdb_test "thread 1" {\[Switching to thread 1 .*\].*}
|
||||
|
||||
# get a stack trace
|
||||
#
|
||||
# This fails on some linux systems for unknown reasons. On the
|
||||
|
|
Loading…
Reference in a new issue