bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/23161] __bss_start, _end and _edata aren't marked as hidden


From: markj at FreeBSD dot org
Subject: [Bug ld/23161] __bss_start, _end and _edata aren't marked as hidden
Date: Tue, 29 May 2018 16:16:28 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=23161

Mark Johnston <markj at FreeBSD dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |markj at FreeBSD dot org

--- Comment #2 from Mark Johnston <markj at FreeBSD dot org> ---
(In reply to Alan Modra from comment #1)
FreeBSD's libc uses _end to initialize curbrk. At a glance, OpenBSD and NetBSD
appear to do this as well. For this use case it is crucial that _end be present
in the executable's dynsym, since libc will otherwise use its internal
definition.

I peeked at the glibc sources; it seems that they rely on Linux's brk() system
call returning the current break value when given an input of 0. This is used
to lazily initialize the curbrk. We could probably add a similar hack to
FreeBSD to get around this, but as noted, we're not the only ones relying on
this behaviour.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]