svn commit: r195697 - in head: . contrib/gcc/config gnu/lib/libgcc gnu/lib/libssp/libssp_nonshared lib/libc lib/libc/sys libexec/rtld-elf share/mk

Jeremie Le Hen jeremie at le-hen.org
Tue Jul 28 07:35:24 UTC 2009


On Tue, Jul 14, 2009 at 09:19:13PM +0000, Alexander Kabaev wrote:
> Author: kan
> Date: Tue Jul 14 21:19:13 2009
> New Revision: 195697
> URL: http://svn.freebsd.org/changeset/base/195697
> 
> Log:
>   Second attempt at eliminating .text relocations in shared libraries
>   compiled with stack protector.
>   
>   Use libssp_nonshared library to pull __stack_chk_fail_local symbol into
>   each library that needs it instead of pulling it from libc. GCC
>   generates local calls to this function which result in absolute
>   relocations put into position-independent code segment, making dynamic
>   loader do extra work every time given shared library is being relocated
>   and making affected text pages non-shareable.

Wow, this is a nice catch.  I'm glad you figured it out before the
release.  Thanks!

Regards,
-- 
Jeremie Le Hen
< jeremie at le-hen dot org >< ttz at chchile dot org >


More information about the svn-src-head mailing list