This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] x86-64: Align the stack in __tls_get_addr [BZ #21609]
On Thu, Jul 6, 2017 at 8:32 AM, Alexander Monakov <amonakov@ispras.ru> wrote:
> On Thu, 6 Jul 2017, Alexander Monakov wrote:
>> There is no need to introduce new symbols nor symbol versions. It's
>> sufficient to implement amd64 __tls_get_attr in assembly, rename generic
>> __tls_get_attr, and call the renamed generic implementation from the slow
>> path after realigning the stack.
>
> Actually, looking at elf/dl-tls.c, I see that __tls_get_addr doesn't need
> aligned stack, and its callees update_get_addr and tls_get_addr_tail are
> already marked noinline, so isn't it sufficient to additionally mark those
> with __attribute__((force_align_arg_pointer)) on x86-64?
>
Please take a look at the current master branch. I have pushed a fix
today:
https://sourceware.org/git/?p=glibc.git;a=commit;h=031e519c95c069abe4e4c7c59e2b4b67efccdee5
--
H.J.