public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] gdb: Disable address space randomization for a test
@ 2018-07-30 18:50 Andrew Burgess
  2018-07-30 18:56 ` Paul Koning
  0 siblings, 1 reply; 7+ messages in thread
From: Andrew Burgess @ 2018-07-30 18:50 UTC (permalink / raw)
  To: gdb-patches; +Cc: Andrew Burgess

The gdb.opt/inline-break.exp test script relies on capturing a $pc
value in one run of GDB, then restarting GDB and placing a breakpoint
at the previously captured $pc and checking we get the expected
behaviour.

With address space randomization on then the captured $pc value is
almost never valid in the second run of GDB, and so the test fails.

Disabling address space randomization where appropriate fixes this
issue.

gdb/testsuite/ChangeLog:

	* gdb.opt/inline-break.exp: Disable address space randomization
	for the two runs where we care about addresses being consistent.
---
 gdb/testsuite/ChangeLog                |  5 +++++
 gdb/testsuite/gdb.opt/inline-break.exp | 12 ++++++++++++
 2 files changed, 17 insertions(+)

diff --git a/gdb/testsuite/gdb.opt/inline-break.exp b/gdb/testsuite/gdb.opt/inline-break.exp
index aed38ed631f..00a5467d617 100644
--- a/gdb/testsuite/gdb.opt/inline-break.exp
+++ b/gdb/testsuite/gdb.opt/inline-break.exp
@@ -264,6 +264,12 @@ set line [gdb_get_line_number "break here"]
 with_test_prefix "line number" {
     clean_restart $binfile
 
+    # At the end of this test we store a $pc value, then restart GDB,
+    # and use this $pc value to place a breakpoint.  If address space
+    # randomization is on, then the chance of this $pc value being
+    # correct in a second GDB instance is pretty small.
+    gdb_test "set disable-randomization off"
+
     if {![runto main]} {
 	untested "could not run to main"
 	continue
@@ -289,6 +295,12 @@ with_test_prefix "address" {
 
     clean_restart $binfile
 
+    # We're about to reuse the $pc value from a prevous run of GDB.
+    # Ensure address space randomization is off so that the inferior
+    # is placed at the same address as previous, and the stored $pc
+    # will still be valid.
+    gdb_test "set disable-randomization off"
+
     if {![runto main]} {
 	untested "could not run to main"
 	continue
-- 
2.14.4

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-07-31 14:23 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-07-30 18:50 [PATCH] gdb: Disable address space randomization for a test Andrew Burgess
2018-07-30 18:56 ` Paul Koning
2018-07-30 19:02   ` Andrew Burgess
2018-07-30 19:49     ` Simon Marchi
2018-07-31 12:47       ` Andrew Burgess
2018-07-31 13:32         ` Simon Marchi
2018-07-31 14:23   ` Tom Tromey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).