[PATCH v7] elf: Handle static PIE with non-zero load address [BZ #31799]
H.J. Lu
hjl.tools@gmail.com
Sat Nov 30 04:18:42 GMT 2024
On Sat, Nov 30, 2024, 12:52 AM Florian Weimer <fweimer@redhat.com> wrote:
> * H. J. Lu:
>
> > +ifneq (,$(load-address-ldflag))
> > +tests += \
> > + tst-pie-address \
> > + # tests
> > +tests-pie += \
> > + tst-pie-address \
> > + # tests-pie
> > +LDFLAGS-tst-pie-address += $(load-address-ldflag)=$(pde-load-address)
> > +ifeq (yes,$(enable-static-pie))
> > +tests += \
> > + tst-pie-address-static \
> > + # tests
> > +tests-static += \
> > + tst-pie-address-static \
> > + # tests-static
> > +LDFLAGS-tst-pie-address-static += \
> > + $(load-address-ldflag)=$(pde-load-address)
> > +endif
> > +endif
>
> These tests fail on aarch64 and s390x for us:
>
> =====FAIL: elf/tst-pie-address.out=====
> =====FAIL: elf/tst-pie-address.test-result=====
> FAIL: elf/tst-pie-address
> original exit status 139
> =====FAIL: elf/tst-pie-address-static.out=====
> =====FAIL: elf/tst-pie-address-static.test-result=====
> FAIL: elf/tst-pie-address-static
> original exit status 132
>
Do they fail without -Ttext-segment=? My change doesn't
touch dynamic PIE. If it fails, it may be due to glibc or ld bugs.
> The configure checks report this
>
> checking whether -fPIE is default... no
> checking PDE load address... 0x0000000001000000
> checking for linker that supports -Ttext-segment=0x0000000001000000... yes
> checking if we can build programs as PIE... yes
> checking if we can build static PIE programs... yes
>
> checking whether -fPIE is default... no
> checking PDE load address... 0x0000000000400000
> checking for linker that supports -Ttext-segment=0x0000000000400000... yes
> checking if we can build programs as PIE... yes
> checking if we can build static PIE programs... yes
>
> Thanks,
> Florian
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://sourceware.org/pipermail/libc-alpha/attachments/20241130/abfd6455/attachment.htm>
More information about the Libc-alpha
mailing list