gdb/testsuite: gdb.mi/mi-nonstop-exit.exp: enable non-stop using GDBFLAGS
authorSimon Marchi <simon.marchi@polymtl.ca>
Wed, 18 Nov 2020 19:58:43 +0000 (14:58 -0500)
committerSimon Marchi <simon.marchi@efficios.com>
Wed, 18 Nov 2020 19:58:44 +0000 (14:58 -0500)
When running

    make check TESTS="gdb.mi/mi-nonstop-exit.exp" RUNTESTFLAGS="--target_board=native-extended-gdbserver"

We get:

    220^error,msg="Unexpected vCont reply in non-stop mode: T05swbreak:;06:60d5ffffff7f0000;07:d0d2ffffff7f0000;10:5b57fdf7ff7f0000;thread:p2a4eed.2a4eed;core    :4;"^M
    (gdb) ^M
    UNRESOLVED: gdb.mi/mi-nonstop-exit.exp: first run: unable to start target

This is because non-stop is enabled using "-gdb-set non-stop 1".  This
doesn't work with the native-extended-gdbserver board, because with that
board GDB connects to GDBserver as soon as it's started.  Non-stop needs
to be enabled before connecting.

The usual pattern to follow is to set non-stop on the command line, like
gdb.mi/mi-nonstop.exp does.  Change the non-stop MI tests to use that
pattern.

The results diff when running gdb.mi/*.exp is:

    -# of expected passes           2877
    +# of expected passes           2938
     # of unexpected failures       34
     # of expected failures         8
     # of known failures            13
     # of unresolved testcases      4
     # of unsupported tests         1
    -# of duplicate test names      34
    +# of duplicate test names      35

gdb/testsuite/ChangeLog:

* gdb.mi/mi-nonstop-exit.exp: Enable non-stop through GDBFLAGS.
* gdb.mi/mi-ns-stale-regcache.exp: Likewise.
* gdb.mi/mi-nsintrall.exp: Likewise.
* gdb.mi/mi-nsmoribund.exp: Likewise.
* gdb.mi/mi-nsthrexec.exp: Likewise.
* gdb.mi/mi-watch-nonstop.exp: Likewise.

Change-Id: Ic2736bedea8d448eee8c2b534d26b2427f6b4d27

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.mi/mi-nonstop-exit.exp
gdb/testsuite/gdb.mi/mi-ns-stale-regcache.exp
gdb/testsuite/gdb.mi/mi-nsintrall.exp
gdb/testsuite/gdb.mi/mi-nsmoribund.exp
gdb/testsuite/gdb.mi/mi-nsthrexec.exp
gdb/testsuite/gdb.mi/mi-watch-nonstop.exp

index 4722846c75e140cd387c49141d41bbabf9711404..1deb7a07ee40d1e9aafac78dad415b4cb93137c5 100644 (file)
@@ -1,3 +1,12 @@
+2020-11-18  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * gdb.mi/mi-nonstop-exit.exp: Enable non-stop through GDBFLAGS.
+       * gdb.mi/mi-ns-stale-regcache.exp: Likewise.
+       * gdb.mi/mi-nsintrall.exp: Likewise.
+       * gdb.mi/mi-nsmoribund.exp: Likewise.
+       * gdb.mi/mi-nsthrexec.exp: Likewise.
+       * gdb.mi/mi-watch-nonstop.exp: Likewise.
+
 2020-11-18  Simon Marchi  <simon.marchi@polymtl.ca>
 
        * lib/mi-support.exp (mi_run_cmd_full): Use unresovled instead
index 3e58754c9a42a60b284acba044490a0fc0b6e9ff..566b11e3c1488a962020a07c91d34c9e54894d13 100644 (file)
@@ -31,9 +31,11 @@ if {[gdb_compile_pthreads "$srcdir/$subdir/$srcfile" $binfile executable $option
     return -1
 }
 
-mi_clean_restart $binfile
+save_vars { GDBFLAGS } {
+    append GDBFLAGS " -ex \"set non-stop on\""
+    mi_clean_restart $binfile
+}
 
-mi_gdb_test "-gdb-set non-stop 1" ".*"
 mi_gdb_test "-gdb-set mi-async 1" ".*"
 mi_detect_async
 
index ebbdb4186a4d464b5bab418ef325d9a2b22945dc..fe0bd4850ecc5363376f0f53c322de90135a59f5 100644 (file)
@@ -44,9 +44,11 @@ if {[gdb_compile "$srcdir/$subdir/$srcfile" \
     return -1
 }
 
-mi_clean_restart $binfile
+save_vars { GDBFLAGS } {
+    append GDBFLAGS " -ex \"set non-stop on\""
+    mi_clean_restart $binfile
+}
 
-mi_gdb_test "-gdb-set non-stop 1" ".*"
 mi_gdb_test "-gdb-set mi-async 1" ".*"
 mi_detect_async
 
index aa0e81c84ca7c9e78367492516c60250ad30373a..e76a9ac0abc31846f2c6c08dfbe06bdedd383d74 100644 (file)
@@ -31,9 +31,11 @@ if {[gdb_compile_pthreads "$srcdir/$subdir/$srcfile" $binfile executable $option
     return -1
 }
 
-mi_clean_restart $binfile
+save_vars { GDBFLAGS } {
+    append GDBFLAGS " -ex \"set non-stop on\""
+    mi_clean_restart $binfile
+}
 
-mi_gdb_test "-gdb-set non-stop 1" ".*"
 mi_gdb_test "-gdb-set mi-async 1" ".*"
 mi_detect_async
 
index 3e99b5f0c6f902339235033be27ed9977fe707f7..73f1be5eea19eff141ba0a35e67dcd9229ef08a3 100644 (file)
@@ -31,9 +31,11 @@ if {[gdb_compile_pthreads "$srcdir/$subdir/$srcfile" $binfile executable $option
     return -1
 }
 
-mi_clean_restart $binfile
+save_vars { GDBFLAGS } {
+    append GDBFLAGS " -ex \"set non-stop on\""
+    mi_clean_restart $binfile
+}
 
-mi_gdb_test "-gdb-set non-stop 1" ".*"
 mi_gdb_test "-gdb-set mi-async 1" ".*"
 mi_detect_async
 
index 6f4800aa912be04ca63a70ee07077326b1c05a7b..da986394621d819ac1d7af7f3ef7bda33f7d8cd8 100644 (file)
@@ -36,9 +36,11 @@ if {[gdb_compile_pthreads "$srcdir/$subdir/$srcfile" $binfile executable $option
     return -1
 }
 
-mi_clean_restart $binfile
+save_vars { GDBFLAGS } {
+    append GDBFLAGS " -ex \"set non-stop on\""
+    mi_clean_restart $binfile
+}
 
-mi_gdb_test "-gdb-set non-stop 1" ".*"
 mi_gdb_test "-gdb-set mi-async 1" ".*"
 mi_detect_async
 
index 6b56f384239a330a50a1d015e94639e7c82584bf..d887fe515cb70e1dd5eab1435c2530206481fecf 100644 (file)
@@ -43,9 +43,11 @@ if {[gdb_compile "$srcdir/$subdir/$srcfile" $binfile executable {debug}] != "" }
     return -1
 }
 
-mi_clean_restart $binfile
+save_vars { GDBFLAGS } {
+    append GDBFLAGS " -ex \"set non-stop on\""
+    mi_clean_restart $binfile
+}
 
-mi_gdb_test "-gdb-set non-stop 1" ".*"
 mi_gdb_test "-gdb-set mi-async 1" ".*"
 mi_detect_async