Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 May 2019 23:45:35 +0800
From:      =?UTF-8?B?RsSBbmctcnXDrCBTw7JuZw==?= <emacsray@gmail.com>
To:        jrtc27@jrtc27.com, brooks@freebsd.org, emaste@freebsd.org, kib@freebsd.org
Cc:        freebsd-toolchain@freebsd.org
Subject:   TLS Variant I may not satisfy offset%p_align == (base+p_vaddr)%p_align
Message-ID:  <CAN30aBGLuXYZ5Hf99Jfvg5=kX%2B3QBFi6%2BSx040rC9ppnWP6y1g@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
See https://reviews.llvm.org/D61824

For the PT_TLS segment in the main module, currently when
p_vaddr%p_align!=0, FreeBSD rtld behaves like musl (1.1.20~1.1.22) - it
aligns the TLS block to 0 modulo main_tls_align. This is incorrect.

According to Szabolcs Nagy, glibc/elf/dl-tls.c is correct and FreeBSD
rtld/musl/Bionic are wrong.

This revision is related: https://reviews.freebsd.org/D16510

I did a quick test with qemu-system-aarch64
FreeBSD-13.0-CURRENT-arm64-aarch64-20190510-r347415-mini-memstick.img while
investigating the Android breakage. I haven't looked into the source
carefully.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAN30aBGLuXYZ5Hf99Jfvg5=kX%2B3QBFi6%2BSx040rC9ppnWP6y1g>