Test gdb.threads/forking-threads-plus-breakpoint.exp with displaced stepping off
authorPedro Alves <palves@redhat.com>
Mon, 1 Feb 2016 18:48:04 +0000 (18:48 +0000)
committerPedro Alves <palves@redhat.com>
Mon, 1 Feb 2016 18:48:04 +0000 (18:48 +0000)
commit6b2e4f10aeb64868720de06d3b2da3cc2d908f10
treebfa2c4e3e3e034be49950152975be4fe55912515
parent37a8db1a336ce78a46bf7f303e47e17b2a1bf694
Test gdb.threads/forking-threads-plus-breakpoint.exp with displaced stepping off

This exposes the internal error Don mentioned in PR19496:

  (1) internal error --  gdb/target.c:2713: internal-error: Can't determine the current address space of thread

More analysis here:

  https://sourceware.org/ml/gdb-patches/2016-01/msg00685.html

The (now kfailed) internal error looks like:

 continue &
 Continuing.
 (gdb) PASS: gdb.threads/forking-threads-plus-breakpoint.exp: cond_bp_target=1: detach_on_fork=on: displaced=off: continue &
 [New Thread 2846.2847]
 (...)
 [New Thread 2867.2867]
 /home/pedro/gdb/mygit/src/gdb/target.c:2723: internal-error: Can't determine the current address space of thread Thread 2846.2846

 A problem internal to GDB has been detected,
 further debugging may prove unreliable.
 Quit this debugging session? (y or n) KFAIL: gdb.threads/forking-threads-plus-breakpoint.exp: cond_bp_target=1: detach_on_fork=on: displaced=off: inferior 1 exited (GDB internal error) (PRMS: remote/19496)
 Resyncing due to internal error.

gdb/testsuite/ChangeLog:
2016-02-01  Pedro Alves  <palves@redhat.com>

PR remote/19496
* gdb.threads/forking-threads-plus-breakpoint.exp
(displaced_stepping_supported): New global.
(probe_displaced_stepping_support): New procedure.
(do_test): Add 'displaced' parameter, and use it.
(top level): Check for displaced stepping support.  Add displaced
stepping on/off testing axis.
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.threads/forking-threads-plus-breakpoint.exp