This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH] Fixed top frame assumption in watchpoint-hw-attach
- From: Richard Bunt <richard dot bunt at arm dot com>
- To: gdb-patches at sourceware dot org
- Cc: nd at arm dot com
- Date: Wed, 27 Jun 2018 11:17:56 +0100
- Subject: [PATCH] Fixed top frame assumption in watchpoint-hw-attach
Fixed top frame assumption in watchpoint-hw-attach
watchpoint-hw-attach.exp was noticed to fail on some machines.
Thanks to the input from sergiodj and palves on the IRC channel,
it was concluded that the test case incorrectly assumed that on
attach it was landed in the top-most frame of the inferior. This
was fixed by running to a break point in main by explicitly
defining the source file name before continuing with the test.
Tested on the following architectures x86_64, aarch64 and ppc64le.
gdb/testsuite/ChangeLog:
2018-06-25 Richard Bunt <richard.bunt@arm.com>
* gdb.base/watchpoint-hw-attach.c (main): Remove unneeded
code.
* gdb.base/watchpoint-hw-attach.exp: Break in outermost frame.
---
gdb/testsuite/gdb.base/watchpoint-hw-attach.c | 1 -
gdb/testsuite/gdb.base/watchpoint-hw-attach.exp | 8 ++++----
2 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/gdb/testsuite/gdb.base/watchpoint-hw-attach.c
b/gdb/testsuite/gdb.base/watchpoint-hw-attach.c
index 9d55b28..5bfea50 100644
--- a/gdb/testsuite/gdb.base/watchpoint-hw-attach.c
+++ b/gdb/testsuite/gdb.base/watchpoint-hw-attach.c
@@ -36,7 +36,6 @@ main (void)
for (counter = 0; !should_continue && counter < 100; counter++)
sleep (1); /* pidacquired */
- watched_variable = 0; /* prewatchtrigger */
/* Trigger a watchpoint. */
watched_variable = 4;
printf ("My variable is %d\n", watched_variable);
diff --git a/gdb/testsuite/gdb.base/watchpoint-hw-attach.exp
b/gdb/testsuite/gdb.base/watchpoint-hw-attach.exp
index 0c5037c..ba7205d 100644
--- a/gdb/testsuite/gdb.base/watchpoint-hw-attach.exp
+++ b/gdb/testsuite/gdb.base/watchpoint-hw-attach.exp
@@ -57,12 +57,12 @@ clean_restart $binfile
gdb_test "attach $testpid" "Attaching to program: .*, process $testpid.*"
-gdb_test_no_output "set should_continue = 1"
-
# Ensure the test program is in the top frame so the required
# variables are in scope.
-gdb_breakpoint [gdb_get_line_number "prewatchtrigger"]
-gdb_continue_to_breakpoint "prewatchtrigger"
+gdb_breakpoint $srcfile:[gdb_get_line_number "pidacquired"]
+gdb_continue_to_breakpoint "$srcfile:pidacquired"
+
+gdb_test_no_output "set should_continue = 1"
gdb_test "watch watched_variable" \
"Hardware watchpoint $decimal: watched_variable"
--
1.8.5.6