From: Samuel Thibault Date: Sat, 24 Mar 2018 23:48:01 +0000 (+0100) Subject: hurd: Fix accessing errno from rtld X-Git-Tag: glibc-2.28~434 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fa97d2ab5b19de0ca3cd02471d0bbf4f09b5032d;p=thirdparty%2Fglibc.git hurd: Fix accessing errno from rtld Letting rtld access errno through TLS can not work at early stages since TLS will not be initialized yet. When a private errno is not possible, we thus have no other way than going through __errno_location. * include/errno.h [IS_IN(rtld) && !RTLD_PRIVATE_ERRNO]: Do not use the TLS declaration of errno. --- diff --git a/ChangeLog b/ChangeLog index 94175ab4b9c..1b7ddba10c7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2018-03-25 Samuel Thibault + + * include/errno.h [IS_IN(rtld) && !RTLD_PRIVATE_ERRNO]: Do not use the + TLS declaration of errno. + 2018-03-24 H.J. Lu [BZ #22998] diff --git a/include/errno.h b/include/errno.h index 3c3d2288c8b..457114b27a7 100644 --- a/include/errno.h +++ b/include/errno.h @@ -20,7 +20,7 @@ # define errno rtld_errno extern int rtld_errno attribute_hidden; -# elif IS_IN_LIB +# elif IS_IN_LIB && !IS_IN (rtld) # include