Restore behavior of disabling address randomization by default on GDBserver
authorSimon Marchi <simon.marchi@ericsson.com>
Sun, 26 Aug 2018 09:46:45 +0000 (11:46 +0200)
committerJoel Brobecker <brobecker@adacore.com>
Sun, 26 Aug 2018 09:46:45 +0000 (11:46 +0200)
Commit

  c12a508 ("Add client_state struct.")

inadvertently changed the default behavior of GDBserver wrt address
randomization.  The old disable_randomization global variable was
initialized to 1, whereas the corresponding field in the client_state
structure is initialized to 0.

This fixes

  make check TESTS="gdb.base/jit-simple.exp" RUNTESTFLAGS="--target_board=native-gdbserver"
  make check TESTS="gdb.base/execl-update-breakpoints.exp" RUNTESTFLAGS="--target_board=native-gdbserver"

Note that the execl-update-breakpoints.exp would only fail on systems
where the toolchain emits position-independent executables by default
(otherwise the main executable position is never randomized, so the
value of disable_randomization didn't matter).

gdb/gdbserver/ChangeLog:

PR gdb/23374
PR gdb/23375
* server.h (struct client_state) <disable_randomization>:
Initialize to 1.

gdb/gdbserver/ChangeLog
gdb/gdbserver/server.h

index f29ecea..f711a6b 100644 (file)
@@ -1,3 +1,10 @@
+2018-08-26  Simon Marchi  <simon.marchi@ericsson.com>
+
+       PR gdb/23374
+       PR gdb/23375
+       * server.h (struct client_state) <disable_randomization>:
+       Initialize to 1.
+
 2018-07-11  Pedro Alves  <palves@redhat.com>
 
        PR gdb/23377
index 8e197ee..5e41e2f 100644 (file)
@@ -176,7 +176,7 @@ struct client_state
 
   /* Whether we should attempt to disable the operating system's address
      space randomization feature before starting an inferior.  */
-  int disable_randomization = 0;
+  int disable_randomization = 1;
 
   int pass_signals[GDB_SIGNAL_LAST];
   int program_signals[GDB_SIGNAL_LAST];