Time to enable partial relro

Konstantin Belousov kostikbel at gmail.com
Sat Aug 27 17:45:58 UTC 2016


On Sat, Aug 27, 2016 at 11:06:54AM -0500, Pedro Giffuni wrote:
> 
> 
> On 08/26/16 20:10, Pedro Giffuni wrote:
> >
> >
> ...>> I think we should move forward, just want to make sure it doesn???t
> >> break some arch completely before moving ahead. While lld is a goal,
> >> the goal is also to have a ld.bdf installed for 12, iirc, as a fallback.
> >
> > And very right you are, this has all the chances of breaking MIPS*:
> >
> > "A configure option --enable-relro={yes|no} to decide
> >  whether -z relro should be the default behaviour for
> >  the linker in ELF based targets.  If this configure
> >  option is not specified then relro will be enabled
> >  automatically for all Linux based targets except FRV,
> >  HPPA, IA64 and MIPS."
> >
> > _____
> >
> > I will update the patch to exclude MIPS (and MIPS64 JIC).
> >
> > Pedro.
> >
> > *https://gcc.gnu.org/ml/gcc/2016-08/msg00134.html
> >
> 
> Looking more into this, and the arm report from Mark Millard (thanks!),
> binutils has tests for RELRO in their testsuite that would be an
> important indicator before enabling the option.
> 
> It surprises me that we don't have an easy way to run those checks from 
> the port, so I borrowed the regression-test mode from GCC and I am 
> attaching it.
> 
> The tests may depend on some gnu-isms but we don't appear to do too
> well on the tests:
> 
>                  === ld Summary ===
> 
> # of expected passes            511
> # of unexpected failures        78
> # of expected failures          4
> # of unresolved testcases       35
> # of untested testcases         1
> # of unsupported tests          9
> /usr/ports/devel/binutils/work/binutils-2.27/ld/ld-new 2.27

And ?  In which way this data is useful or indicative of anything ?
Why this tests are relevant to the proposed change ?  AFAIK, binutils
tests typically compare ld output against expected binary.

And, number of the unexpected failures in your showcase is quite worrying.


More information about the freebsd-toolchain mailing list