aboutsummaryrefslogtreecommitdiff
path: root/gdb/python
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@polymtl.ca>2021-06-10 10:47:40 -0400
committerSimon Marchi <simon.marchi@polymtl.ca>2021-08-05 12:24:51 -0400
commit4b0cf3d6d0ff4a737f8aee2ed388fbc72ba941be (patch)
tree21565aced854d4d74436db36cbed7ac8d2df0517 /gdb/python
parent52e0e32b34e503630e124cd60365a6d3ec5b1181 (diff)
downloadbinutils-4b0cf3d6d0ff4a737f8aee2ed388fbc72ba941be.zip
binutils-4b0cf3d6d0ff4a737f8aee2ed388fbc72ba941be.tar.gz
binutils-4b0cf3d6d0ff4a737f8aee2ed388fbc72ba941be.tar.bz2
gdb/testsuite: gdb.base/attach.exp: expose bug when testing with native-extended-gdbserver
In gdb.base/attach.exp, proc do_attach_failure_tests, we attach to a process. When then try to attach to the same process in another inferior, expecting it to fail. We then come back to the first inferior and try to kill it, to clean up the test. When using the native-extended-gdbserver board, this "kill" test passes, even though it didn't actually work: add-inferior [New inferior 2] Added inferior 2 on connection 1 (extended-remote localhost:2347) (gdb) PASS: gdb.base/attach.exp: do_attach_failure_tests: add empty inferior 2 inferior 2 [Switching to inferior 2 [<null>] (<noexec>)] (gdb) PASS: gdb.base/attach.exp: do_attach_failure_tests: switch to inferior 2 attach 817032 Attaching to process 817032 Attaching to process 817032 failed (gdb) PASS: gdb.base/attach.exp: do_attach_failure_tests: fail to attach again inferior 1 [Switching to inferior 1 [process 817032] (/home/simark/build/binutils-gdb/gdb/testsuite/outputs/gdb.base/attach/attach)] [Switching to thread 1.1 (Thread 817032.817032)] #0 main () at /home/simark/src/binutils-gdb/gdb/testsuite/gdb.base/attach.c:19 19 while (! should_exit) (gdb) PASS: gdb.base/attach.exp: do_attach_failure_tests: switch to inferior 1 kill Kill the program being debugged? (y or n) y Remote connection closed <==== That's unexpected (gdb) PASS: gdb.base/attach.exp: do_attach_failure_tests: exit after attach failures When the second attach fails, gdbserver seems to break the connection (it hangs up on the existing remote target) and start listening again for incoming connections. This is documented in PR 19558 [1]. Make the expected output regexp for the kill command tighter (it currently accepts anything). Use "set confirm off" so we don't have to deal with the confirmation. And to be really sure the extended-remote target still works, try to run the inferior again after killing. The now tests are kfail'ed when the target is gdbserver. [1] https://sourceware.org/bugzilla/show_bug.cgi?id=19558 gdb/testsuite/ChangeLog: * gdb.base/attach.exp (do_attach_failure_tests): Make kill regexp tighter, run inferior after killing it. Kfail when target is gdbserver. Change-Id: I99c5cd3968ce2ec962ace35b016f842a243b7a0d
Diffstat (limited to 'gdb/python')
0 files changed, 0 insertions, 0 deletions