[PATCH] ld: Require GCC 8.0 for p_align-1.c tests
H.J. Lu
hjl.tools@gmail.com
Mon Jan 17 13:44:27 GMT 2022
On Mon, Jan 17, 2022 at 2:38 AM Jan Beulich <jbeulich@suse.com> wrote:
>
> On 14.01.2022 15:14, H.J. Lu wrote:
> > On Fri, Jan 14, 2022 at 6:08 AM Jan Beulich <jbeulich@suse.com> wrote:
> >>
> >> On 14.01.2022 15:02, H.J. Lu wrote:
> >>> On Fri, Jan 14, 2022 at 5:40 AM Jan Beulich <jbeulich@suse.com> wrote:
> >>>>
> >>>> On 14.01.2022 14:03, H.J. Lu wrote:
> >>>>> On Fri, Jan 14, 2022 at 12:27 AM Jan Beulich <jbeulich@suse.com> wrote:
> >>>>>>
> >>>>>> On 29.12.2021 20:39, H.J. Lu via Binutils wrote:
> >>>>>>> --- a/ld/testsuite/ld-elf/linux-x86.exp
> >>>>>>> +++ b/ld/testsuite/ld-elf/linux-x86.exp
> >>>>>>> @@ -185,6 +185,42 @@ run_ld_link_exec_tests [list \
> >>>>>>> "" \
> >>>>>>> "tmpdir/indirect-extern-access-2.so" \
> >>>>>>> ] \
> >>>>>>> + [list \
> >>>>>>> + "Run p_align-1a without PIE" \
> >>>>>>> + "$NOPIE_LDFLAGS" \
> >>>>>>> + "" \
> >>>>>>> + { p_align-1.c } \
> >>>>>>> + "p_align-1a" \
> >>>>>>> + "pass.out" \
> >>>>>>> + "$NOPIE_CFLAGS" \
> >>>>>>> + ] \
> >>>>>>> + [list \
> >>>>>>> + "Run p_align-1b with PIE" \
> >>>>>>> + "-pie" \
> >>>>>>> + "" \
> >>>>>>> + { p_align-1.c } \
> >>>>>>> + "p_align-1b" \
> >>>>>>> + "pass.out" \
> >>>>>>> + "-fpie" \
> >>>>>>> + ] \
> >>>>>>> + [list \
> >>>>>>> + "Run p_align-1c with -Wl,-z,max-page-size=0x1000 without PIE" \
> >>>>>>> + "$NOPIE_LDFLAGS -Wl,-z,max-page-size=0x1000" \
> >>>>>>> + "" \
> >>>>>>> + { p_align-1.c } \
> >>>>>>> + "p_align-1c" \
> >>>>>>> + "pass.out" \
> >>>>>>> + "$NOPIE_CFLAGS" \
> >>>>>>> + ] \
> >>>>>>> + [list \
> >>>>>>> + "Run p_align-1d with -Wl,-z,max-page-size=0x1000 with PIE" \
> >>>>>>> + "-pie -Wl,-z,max-page-size=0x1000" \
> >>>>>>> + "" \
> >>>>>>> + { p_align-1.c } \
> >>>>>>> + "p_align-1d" \
> >>>>>>> + "pass.out" \
> >>>>>>> + "-fpie" \
> >>>>>>> + ] \
> >>>>>>> ]
> >>>>>>
> >>>>>> The two PIE variants of this also fail for me on glibc 2.26. Looks
> >>>>>> like LOAD segments' alignment isn't being honored there, at least
> >>>>>> not if it's as big as it is here.
> >>>>>>
> >>>>>
> >>>>> The PIE alignment needs the kernel fix:
> >>>>>
> >>>>> commit ce81bb256a224259ab686742a6284930cbe4f1fa
> >>>>> Author: Chris Kennelly <ckennelly@google.com>
> >>>>> Date: Thu Oct 15 20:12:32 2020 -0700
> >>>>>
> >>>>> fs/binfmt_elf: use PT_LOAD p_align values for suitable start address
> >>>>
> >>>> Well, then the test needs to be skipped if that fix is not in place.
> >>>> After all you're testing binutils behavior here, not kernel or libc one.
> >>>> I'm running a variety of (largely up-to-date) kernels on all of my
> >>>> systems. But it looks like our kernel folks decided against backporting
> >>>> this particular change. And I don't think you expect people to remember
> >>>> to run the testsuite only on top of "certain" kernels?
> >>>
> >>> Care to submit a patch?
> >>
> >> I have no idea what to check for. I would really expect you to fix such
> >> an issue (or really two of them, considering the other problem) recently
> >> introduced by you.
> >
> > What compiler are you using on the broken kernel?
>
> gcc 7.4.1
>
> No idea how that matters, though.
Try this.
--
H.J.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-ld-Require-GCC-8.0-for-p_align-1.c-tests.patch
Type: text/x-patch
Size: 2616 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20220117/c3810b35/attachment.bin>
More information about the Binutils
mailing list