This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: A quick architecture status report
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Zack Weinberg <zackw at panix dot com>
- Cc: GNU C Library <libc-alpha at sourceware dot org>
- Date: Mon, 10 Jul 2017 11:29:12 +0000
- Subject: Re: A quick architecture status report
- Authentication-results: sourceware.org; auth=none
- References: <CAKCAbMj2RvaJFM8ec7+huEOTCSrUiWV4sv2hK8K_iUJ5q4fEmg@mail.gmail.com>
On Sun, 9 Jul 2017, Zack Weinberg wrote:
> Since I was tinkering with build-many-glibcs anyway, here is a report
> on all the failures I currently see.
>
> Overall things seem to be in good shape, but several architectures
> have ELF-lint test failures:
>
> FAIL: glibcs-ia64-linux-gnu check
> FAIL: elf/check-execstack
>
> FAIL: glibcs-microblaze-linux-gnu check
> FAIL: elf/check-execstack
>
> FAIL: glibcs-microblazeel-linux-gnu check
> FAIL: elf/check-execstack
>
> FAIL: glibcs-powerpc64le-linux-gnu check
> FAIL: elf/check-localplt
The powerpc64le-linux-gnu failure is the issue under discussion with a
libgcc IFUNC doing things that aren't safe in IFUNCs. (And build for
powerpc64le-linux-gnu fails since --enable-profile was added to
build-many-glibcs.py.)
> FAIL: glibcs-hppa-linux-gnu check
> (with JDA's patches for HPPA pthreads applied)
> FAIL: elf/check-execstack
> FAIL: elf/check-localplt
> FAIL: elf/check-textrel
>
> These shouldn't be hard to fix, for someone who knows the
> architecture. I don't, but I might try to fix them anyway.
There are at least three possible explanations for check-execstack
failures, each of which should be addressed in a different way.
* Architecture does not support the page permissions required for non-exec
stacks: XFAIL with a comment to that effect.
* Architecture has the required support, all that's needed is a
straightforward GCC change to include the required section in
compiler-generated objects and libgcc objects from assembly sources: make
that GCC change.
* Support is possible, but more complicated toolchain / kernel changes are
needed for some architecture-specific reason: XFAIL with a comment
explaining the issues, as on MIPS.
--
Joseph S. Myers
joseph@codesourcery.com