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