gdb/gdb-testsuite-add-missing-initial-prompt-read-in-multidictionary.exp.patch
Michael Matz 27ab902d16 Accepting request 721544 from home:tomdevries:branches:devel:gcc-2
- Master backport:
  * gdb-fix-breakpoints-on-file-reloads-for-pie-binaries.patch
- Master backports testsuite:
  * gdb-testsuite-i386-pkru-exp.patch
  * gdb-testsuite-read1-fixes.patch
  * gdb-testsuite-pie-no-pie.patch
  * gdb-testsuite-add-missing-initial-prompt-read-in-multidictionary.exp.patch
- Work around bsc#1115034:
  * gdb-testsuite-ada-pie.patch
- Fixes for fedora patches:
  * gdb-testsuite-fix-perror-in-gdb.opt-fortran-string.exp.patch
  * gdb-testsuite-avoid-pagination-in-attach-32.exp.patch

OBS-URL: https://build.opensuse.org/request/show/721544
OBS-URL: https://build.opensuse.org/package/show/devel:gcc/gdb?expand=0&rev=219
2019-08-08 14:14:27 +00:00

60 lines
1.7 KiB
Diff

[gdb/testsuite] Add missing initial prompt read in multidictionary.exp
When running multidictionary.exp in conjunction with:
...
$ stress -c $(($(cat /proc/cpuinfo | grep -c "^processor") + 1))
...
we get:
...
Running gdb/testsuite/gdb.dwarf2/multidictionary.exp ...
ERROR: Couldn't load multidictionary into gdb.
=== gdb Summary ===
nr of unresolved testcases 1
...
The multidictionary test-case needs -readnow, and achieves this using:
...
gdb_spawn_with_cmdline_opts "-readnow"
gdb_load
...
but the initial gdb prompt is not read. Usually, the following gdb_load
command accidentally consumes that initial prompt (at the gdb_expect for the
kill command in gdb_file_cmd). But under high load, that doesn't happen and
we run into the error.
Fix this by consuming the initial gdb prompt after spawning gdb.
Tested on x86_64-linux.
gdb/testsuite/ChangeLog:
2019-07-23 Tom de Vries <tdevries@suse.de>
PR testsuite/24842
* gdb.dwarf2/multidictionary.exp: Consume initial prompt after
gdb_spawn_with_cmdline_opts.
---
gdb/testsuite/gdb.dwarf2/multidictionary.exp | 6 ++++++
2 files changed, 12 insertions(+)
diff --git a/gdb/testsuite/gdb.dwarf2/multidictionary.exp b/gdb/testsuite/gdb.dwarf2/multidictionary.exp
index 5588ef2144..c307ed8adc 100644
--- a/gdb/testsuite/gdb.dwarf2/multidictionary.exp
+++ b/gdb/testsuite/gdb.dwarf2/multidictionary.exp
@@ -148,6 +148,12 @@ if {[build_executable $testfile.exp $testfile [list $asm_file $srcfile] {}] \
# We force the DIEs above to be read in via "-readnow".
gdb_spawn_with_cmdline_opts "-readnow"
+set test "initial prompt"
+gdb_test_multiple "" $test {
+ -re ".*$gdb_prompt $" {
+ pass "$test"
+ }
+}
gdb_load $binfile
# All we need to do is check whether GDB is alive. Without