From 9df503519c0e9925a677792a152d958de18d6bb5 Mon Sep 17 00:00:00 2001 From: Jan Kratochvil Date: Mon, 24 Mar 2008 15:16:12 +0000 Subject: [PATCH] Fix random false FAILs on i386. * gdb.base/prelink.exp: Use `--no-exec-shield' for prelink. --- gdb/testsuite/ChangeLog | 5 +++++ gdb/testsuite/gdb.base/prelink.exp | 12 ++++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 669384e98c3..e35373305f3 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-03-24 Jan Kratochvil + + Fix random false FAILs on i386. + * gdb.base/prelink.exp: Use `--no-exec-shield' for prelink. + 2008-03-23 Daniel Jacobowitz PR gdb/544 diff --git a/gdb/testsuite/gdb.base/prelink.exp b/gdb/testsuite/gdb.base/prelink.exp index abdf927e9a7..4f6779fea62 100644 --- a/gdb/testsuite/gdb.base/prelink.exp +++ b/gdb/testsuite/gdb.base/prelink.exp @@ -47,7 +47,15 @@ if { [gdb_compile "${srcdir}/${subdir}/${libsrcfile}" "${libfile}" executable [l return -1 } -if {[catch "system \"prelink -qNR ${libfile}\""] != 0} { +# `--no-exec-shield' is for i386 where prelink in the exec-shield mode is +# forced to push all the libraries tight together to fit into the first two +# memory areas (either the ASCII Shield area or at least below the executable). +# In this case its -R option cannot be applied and we falsely FAIL here as if +# the system is already prelinked prelink has no choice how to randomize the +# single new unprelinked library address without wasting the first one/two +# memory areas. We do not care of the efficiency of loading such resulting +# exec-shield unfriendly prelinked library. +if {[catch "system \"prelink -qNR --no-exec-shield ${libfile}\""] != 0} { # Maybe we don't have prelink. return -1 } @@ -92,7 +100,7 @@ if {[catch "system \"prelink -uN ${libfile}\""] != 0} { untested "${testfile}.so was not prelinked, maybe system libraries are not prelinked?" return 0 } -catch "system \"prelink -qNR ${libfile}\"" +catch "system \"prelink -qNR --no-exec-shield ${libfile}\"" # Start with a fresh gdb -- 2.30.2