1af9e5
commit 21788250c945713fa25c16f2683e1f9cd0bb6ccf
1af9e5
Author: philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9>
1af9e5
Date:   Sun Jun 25 12:40:53 2017 +0000
1af9e5
1af9e5
    Fix some tests failure with GDB 8.0
1af9e5
    
1af9e5
    At the beginning of a Valgrind gdbserver test,
1af9e5
    2 messages are produced when launching the command
1af9e5
       target remote | vgdb
1af9e5
    
1af9e5
    A message output by vgdb:
1af9e5
       relaying data between gdb and process <pid>
1af9e5
    (this message is read by GDB from the vgdb pipe, and re-output
1af9e5
    on stderr)
1af9e5
    and a message produced by GDB:
1af9e5
       Remote debugging using | ./vgdb
1af9e5
    
1af9e5
    GDB 8.0 changes the order in which the above messages are output.
1af9e5
    This causes 2 tests to fail, as the 'relaying' line appears
1af9e5
    then in a part of the output deleted by a filter script.
1af9e5
    
1af9e5
    To avoid this, change the filter scripts to always remove
1af9e5
    this 'relaying line', which is not particularly interesting to check.
1af9e5
    All the .exp files containining such a 'relaying' line are updated
1af9e5
    accordingly.
1af9e5
    
1af9e5
    This has been tested with various gdb versions (7.5, 7.7, 7.12, 8.0)
1af9e5
    on amd64 and/or ppc64.
1af9e5
    
1af9e5
    Thanks to Mark Wielaard, which helped to investigate this problem
1af9e5
    by bisecting the GDB patches in GDB 8.0 causing this change of
1af9e5
    behaviour.
1af9e5
    
1af9e5
    
1af9e5
    
1af9e5
    
1af9e5
    git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16453 a5019735-40e9-0310-863c-91ae7b9d1cf9
1af9e5
1af9e5
diff --git a/gdbserver_tests/filter_gdb b/gdbserver_tests/filter_gdb
1af9e5
index 7177720..ed78cfe 100755
1af9e5
--- a/gdbserver_tests/filter_gdb
1af9e5
+++ b/gdbserver_tests/filter_gdb
1af9e5
@@ -72,7 +72,7 @@ sed -e '/Remote debugging using/,/vgdb launched process attached/d'
1af9e5
     -e '/^Missing separate debuginfo/d'                                                               \
1af9e5
     -e '/\/_exit.c: No such file or directory/d'                                                      \
1af9e5
     -e '/^Try: zypper install -C/d'                                                                   \
1af9e5
-    -e 's/\(relaying data between gdb and process \)[0-9][0-9]*/\1..../'                              \
1af9e5
+    -e '/relaying data between gdb and process/d'                                                     \
1af9e5
     -e 's/pid [0-9][0-9]*/pid ..../g'                                                                 \
1af9e5
     -e 's/Thread [0-9][0-9]*/Thread ..../g'                                                           \
1af9e5
     -e '/\[Switching to Thread ....\]/d'                                                              \
1af9e5
diff --git a/gdbserver_tests/filter_vgdb b/gdbserver_tests/filter_vgdb
1af9e5
index 2442ec5..f8028a3 100755
1af9e5
--- a/gdbserver_tests/filter_vgdb
1af9e5
+++ b/gdbserver_tests/filter_vgdb
1af9e5
@@ -11,7 +11,7 @@ $dir/../tests/filter_addresses                  |
1af9e5
 #             pid
1af9e5
 # gdb 7.2 sometimes tries to access address 0x0 (same as with standard gdbserver)
1af9e5
 # filter a debian 6.0/ppc32 line
1af9e5
-sed -e 's/\(relaying data between gdb and process \)[0-9][0-9]*/\1..../' \
1af9e5
+sed -e '/relaying data between gdb and process/d'                        \
1af9e5
     -e 's/\(sending command .* to pid \)[0-9][0-9]*/\1..../'             \
1af9e5
     -e '/Cannot access memory at address 0x......../d'                   \
1af9e5
     -e '/^[1-9][0-9]*	\.\.\/sysdeps\/powerpc\/powerpc32\/dl-start\.S: No such file or directory\./d' |
1af9e5
diff --git a/gdbserver_tests/hginfo.stderrB.exp b/gdbserver_tests/hginfo.stderrB.exp
1af9e5
index df47f11..669ff92 100644
1af9e5
--- a/gdbserver_tests/hginfo.stderrB.exp
1af9e5
+++ b/gdbserver_tests/hginfo.stderrB.exp
1af9e5
@@ -1,4 +1,3 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
 Lock ga 0x........ {
1af9e5
  Address 0x........ is 0 bytes inside data symbol "mx"
1af9e5
diff --git a/gdbserver_tests/mcblocklistsearch.stderrB.exp b/gdbserver_tests/mcblocklistsearch.stderrB.exp
1af9e5
index 312d776..1313321 100644
1af9e5
--- a/gdbserver_tests/mcblocklistsearch.stderrB.exp
1af9e5
+++ b/gdbserver_tests/mcblocklistsearch.stderrB.exp
1af9e5
@@ -1,4 +1,3 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
 Breakpoint 1 at 0x........: file leak-tree.c, line 42.
1af9e5
 Breakpoint 2 at 0x........: file leak-tree.c, line 67.
1af9e5
diff --git a/gdbserver_tests/mcbreak.stderrB.exp b/gdbserver_tests/mcbreak.stderrB.exp
1af9e5
index 65281d2..0f051d1 100644
1af9e5
--- a/gdbserver_tests/mcbreak.stderrB.exp
1af9e5
+++ b/gdbserver_tests/mcbreak.stderrB.exp
1af9e5
@@ -1,4 +1,3 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
 vgdb-error value changed from 999999 to 0
1af9e5
 n_errs_found 1 n_errs_shown 1 (vgdb-error 0) 
1af9e5
diff --git a/gdbserver_tests/mcclean_after_fork.stderrB.exp b/gdbserver_tests/mcclean_after_fork.stderrB.exp
1af9e5
index 995b42f..e812b8e 100644
1af9e5
--- a/gdbserver_tests/mcclean_after_fork.stderrB.exp
1af9e5
+++ b/gdbserver_tests/mcclean_after_fork.stderrB.exp
1af9e5
@@ -1,4 +1,3 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
 monitor command request to kill this process
1af9e5
 Remote connection closed
1af9e5
diff --git a/gdbserver_tests/mcinfcallWSRU.stderrB.exp b/gdbserver_tests/mcinfcallWSRU.stderrB.exp
1af9e5
index 7789123..a2f2b87 100644
1af9e5
--- a/gdbserver_tests/mcinfcallWSRU.stderrB.exp
1af9e5
+++ b/gdbserver_tests/mcinfcallWSRU.stderrB.exp
1af9e5
@@ -1,4 +1,3 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
 Breakpoint 1 at 0x........: file sleepers.c, line 74.
1af9e5
 Continuing.
1af9e5
diff --git a/gdbserver_tests/mcleak.stderrB.exp b/gdbserver_tests/mcleak.stderrB.exp
1af9e5
index 7782119..7ed3920 100644
1af9e5
--- a/gdbserver_tests/mcleak.stderrB.exp
1af9e5
+++ b/gdbserver_tests/mcleak.stderrB.exp
1af9e5
@@ -1,4 +1,3 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
 10 bytes in 1 blocks are still reachable in loss record ... of ...
1af9e5
    at 0x........: malloc (vg_replace_malloc.c:...)
1af9e5
diff --git a/gdbserver_tests/mcmain_pic.stderrB.exp b/gdbserver_tests/mcmain_pic.stderrB.exp
1af9e5
index c90e1fa..53ec0ce 100644
1af9e5
--- a/gdbserver_tests/mcmain_pic.stderrB.exp
1af9e5
+++ b/gdbserver_tests/mcmain_pic.stderrB.exp
1af9e5
@@ -1,2 +1 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
diff --git a/gdbserver_tests/mcvabits.stderrB.exp b/gdbserver_tests/mcvabits.stderrB.exp
1af9e5
index bdabb1e..f9ced7a 100644
1af9e5
--- a/gdbserver_tests/mcvabits.stderrB.exp
1af9e5
+++ b/gdbserver_tests/mcvabits.stderrB.exp
1af9e5
@@ -1,4 +1,3 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
 Address 0x........ len 10 addressable
1af9e5
  Address 0x........ is 0 bytes inside data symbol "undefined"
1af9e5
diff --git a/gdbserver_tests/mssnapshot.stderrB.exp b/gdbserver_tests/mssnapshot.stderrB.exp
1af9e5
index 8bee8fc..e419ce6 100644
1af9e5
--- a/gdbserver_tests/mssnapshot.stderrB.exp
1af9e5
+++ b/gdbserver_tests/mssnapshot.stderrB.exp
1af9e5
@@ -1,4 +1,3 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
 general valgrind monitor commands:
1af9e5
   help [debug]            : monitor command help. With debug: + debugging commands
1af9e5
diff --git a/gdbserver_tests/nlgone_abrt.stderrB.exp b/gdbserver_tests/nlgone_abrt.stderrB.exp
1af9e5
index c8b2024..e69de29 100644
1af9e5
--- a/gdbserver_tests/nlgone_abrt.stderrB.exp
1af9e5
+++ b/gdbserver_tests/nlgone_abrt.stderrB.exp
1af9e5
@@ -1 +0,0 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
diff --git a/gdbserver_tests/nlgone_exit.stderrB.exp b/gdbserver_tests/nlgone_exit.stderrB.exp
1af9e5
index c8b2024..e69de29 100644
1af9e5
--- a/gdbserver_tests/nlgone_exit.stderrB.exp
1af9e5
+++ b/gdbserver_tests/nlgone_exit.stderrB.exp
1af9e5
@@ -1 +0,0 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
diff --git a/gdbserver_tests/nlgone_return.stderrB.exp b/gdbserver_tests/nlgone_return.stderrB.exp
1af9e5
index c8b2024..e69de29 100644
1af9e5
--- a/gdbserver_tests/nlgone_return.stderrB.exp
1af9e5
+++ b/gdbserver_tests/nlgone_return.stderrB.exp
1af9e5
@@ -1 +0,0 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
diff --git a/gdbserver_tests/nlpasssigalrm.stderrB.exp b/gdbserver_tests/nlpasssigalrm.stderrB.exp
1af9e5
index c90e1fa..53ec0ce 100644
1af9e5
--- a/gdbserver_tests/nlpasssigalrm.stderrB.exp
1af9e5
+++ b/gdbserver_tests/nlpasssigalrm.stderrB.exp
1af9e5
@@ -1,2 +1 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
diff --git a/gdbserver_tests/nlself_invalidate.stderrB.exp b/gdbserver_tests/nlself_invalidate.stderrB.exp
1af9e5
index c8b2024..e69de29 100644
1af9e5
--- a/gdbserver_tests/nlself_invalidate.stderrB.exp
1af9e5
+++ b/gdbserver_tests/nlself_invalidate.stderrB.exp
1af9e5
@@ -1 +0,0 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
diff --git a/gdbserver_tests/nlsigvgdb.stderrB.exp b/gdbserver_tests/nlsigvgdb.stderrB.exp
1af9e5
index 672fea5..ed5bb61 100644
1af9e5
--- a/gdbserver_tests/nlsigvgdb.stderrB.exp
1af9e5
+++ b/gdbserver_tests/nlsigvgdb.stderrB.exp
1af9e5
@@ -1,4 +1,3 @@
1af9e5
-relaying data between gdb and process ....
1af9e5
 vgdb-error value changed from 0 to 999999
1af9e5
 gdbserver: continuing in 5000 ms ...
1af9e5
 gdbserver: continuing after wait ...