svn commit: r337978 - in head/libexec/rtld-elf: . aarch64 arm mips powerpc powerpc64 riscv
Brooks Davis
brooks at freebsd.org
Tue Aug 21 18:26:56 UTC 2018
On Mon, Aug 20, 2018 at 08:08:01PM +0200, Michal Meloun wrote:
>
> On 20.08.2018 18:02, Kyle Evans wrote:
> > On Mon, Aug 20, 2018 at 11:00 AM, Michal Meloun <melounmichal at gmail.com> wrote:
> >>
> >> On 17.08.2018 18:19, Brooks Davis wrote:
> >>> Author: brooks
> >>> Date: Fri Aug 17 16:19:47 2018
> >>> New Revision: 337978
> >>> URL: https://svnweb.freebsd.org/changeset/base/337978
> >>>
> >>> Log:
> >>> Rework rtld's TLS Variant I implementation to match r326794
> >>>
> >>> The above commit fixed handling overaligned TLS segments in libc's
> >>> TLS Variant I implementation, but rtld provides its own implementation
> >>> for dynamically-linked executables which lacks these fixes. Thus,
> >>> port these changes to rtld.
> >>>
> >>> Submitted by: James Clarke
> >>> Reviewed by: kbowling
> >>> Testing byL kbowling (powerpc64), br (riscv), kevans (armv7)
> >>> Obtained from: CheriBSD
> >>> Sponsored by: DARPA, AFRL
> >>> Differential Revision: https://reviews.freebsd.org/D16510
> >>>
> >>> Modified:
> >>> head/libexec/rtld-elf/aarch64/rtld_machdep.h
> >>> head/libexec/rtld-elf/arm/rtld_machdep.h
> >>> head/libexec/rtld-elf/mips/rtld_machdep.h
> >>> head/libexec/rtld-elf/powerpc/rtld_machdep.h
> >>> head/libexec/rtld-elf/powerpc64/rtld_machdep.h
> >>> head/libexec/rtld-elf/riscv/rtld_machdep.h
> >>> head/libexec/rtld-elf/rtld.c
> >>>
> >> This commit breaks TLS handling for (at least) armv7. Can you please
> >> revert it until I will be able to identify where is problem?
> >> In my case, the libc _ThreadRuneLocale symbol is not zero on program start.
> >>
> >
> > Interesting that I didn't hit this on my armv7 test
> >
>
> No idea yet. For me, it breaks all ctype (isspace()..) related function.
> Originally, I found that bash port gets broken. Its funny if shell takes
> 'a' as non-alphanumeric character, 'x' as whitespace, ...
> Anyway, give me a while - I need to write testcase because bas is too
> complex for effective debugging. This commit isn't fundamentally bad, it
> works for jemalloc thread local variables so I think that only some edge
> case (tbss handling is my candidate) is affected.
Reverted in r338149.
It's quite surprising to me that the system would boot in this state.
Is there anything non-default about your build environment?
-- Brooks
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 455 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/svn-src-all/attachments/20180821/bc7eebc0/attachment.sig>
More information about the svn-src-all
mailing list