|
Message-ID: <20150528160334.3248c0c1@ncopa-desktop.alpinelinux.org> Date: Thu, 28 May 2015 16:03:34 +0200 From: Natanael Copa <ncopa@...inelinux.org> To: Rich Felker <dalias@...c.org> Cc: musl@...ts.openwall.com Subject: Re: Question re: dynamic linking in musl On Wed, 27 May 2015 10:06:58 -0400 Rich Felker <dalias@...c.org> wrote: > On Wed, May 27, 2015 at 04:23:26PM +0300, Timo Teras wrote: > > On Wed, 27 May 2015 15:15:03 +0200 > > Alex Dowad <alexinbeijing@...il.com> wrote: > > > > > On 27/05/15 15:09, Timo Teras wrote: > > > > On Wed, 27 May 2015 16:01:50 +0300 (MSK) > > > > Alexander Monakov <amonakov@...ras.ru> wrote: > > > > > > > >> I'm not familiar with Alpine. Hopefully someone else can chime in > > > >> whether .gnu.hash is deliberately disabled. > > > > We have not touched, so we are using the gcc default. Which > > > > apparently then is sysv only (bummer). > > > > > > Yes, that callgrind profile was from a program installed from Alpine > > > repos. > > > > > > Use --hash-style=both in LD_FLAGS when building the APKs, and dynamic > > > linking will become much faster! > > > > We want that in the toolchain. It's gcc configure option: > > --with-linker-hash-style={sysv,gnu,both} > > > > I wonder if it should be 'gnu' or 'both'. Apparently 'both' will be > > larger as then everything is hashed twice. > > > > Is there any known issues if I just specify 'gnu' ? > > In the sense of "known issues" I would say no, but I would still > strongly discourage this. A valid dynamic ELF file requries the sysv > (standard ELF) hash table; the original reason musl added support for > GNU hash was for ABI-compat to be able to run binaries from distros > that were producing "invalid" ELF files. :-) While musl fully supports > either, and will perform considerably better when GNU hash is present > once we get Alexander Monakov's improvements in, it's possible that > some simple tools for processing ELF files, or programs which do > various sorts of introspection via dl_iterate_phdr or otherwise, may > expect the sysv hash table to be present and fail badly without it. Seems like at least ubuntu has done gnu-only hash style last 5 years. https://bugs.launchpad.net/ubuntu/+source/gcc-4.4/+bug/704691 -nc
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.