Restore behavior of disabling address randomization by default on GDBserver

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.
This commit is contained in:
Simon Marchi
2018-08-22 13:37:05 -04:00
parent 9eef060895
commit 4e2aa47284
2 changed files with 8 additions and 1 deletions

View File

@@ -1,3 +1,10 @@
2018-08-22 Simon Marchi <simon.marchi@ericsson.com>
PR gdb/23374
PR gdb/23375
* server.h (struct client_state) <disable_randomization>:
Initialize to 1.
2018-07-22 Simon Marchi <simon.marchi@polymtl.ca>
* linux-mips-low.c (mips_collect_ptrace_register): Remove unused

View 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];