From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 34596 invoked by alias); 28 Dec 2018 22:26:06 -0000 Mailing-List: contact libc-stable-help@sourceware.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Subscribe: List-Archive: Sender: libc-stable-owner@sourceware.org Received: (qmail 34505 invoked by uid 89); 28 Dec 2018 22:26:06 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.100.2 on sourceware.org X-Virus-Found: No X-Spam-SWARE-Status: No, score=-25.9 required=5.0 tests=BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,KAM_LAZY_DOMAIN_SECURITY autolearn=ham version=3.3.2 spammy=U*carlos, sk:carlos, sk:carlos@, HContent-Transfer-Encoding:8bit X-Spam-Status: No, score=-25.9 required=5.0 tests=BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,KAM_LAZY_DOMAIN_SECURITY autolearn=ham version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on sourceware.org X-Spam-Level: X-HELO: hall.aurel32.net Received: from hall.aurel32.net (HELO hall.aurel32.net) (163.172.24.10) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 28 Dec 2018 22:26:03 +0000 Received: from [78.30.2.155] (helo=ohm.local) by hall.aurel32.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1gd0Zt-0007bC-2V; Fri, 28 Dec 2018 23:26:01 +0100 Received: from aurel32 by ohm.local with local (Exim 4.91) (envelope-from ) id 1gd0Zl-0004n9-Tn; Fri, 28 Dec 2018 23:25:53 +0100 From: Aurelien Jarno To: libc-stable@sourceware.org Cc: Florian Weimer Subject: [2.24 COMMITTED 5/5] csu: Update __libgcc_s_init comment Date: Mon, 01 Jan 2018 00:00:00 -0000 Message-Id: <20181228222540.18325-5-aurelien@aurel32.net> X-Mailer: git-send-email 2.19.2 In-Reply-To: <20181228222540.18325-1-aurelien@aurel32.net> References: <20181228222540.18325-1-aurelien@aurel32.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes X-SW-Source: 2018-12/txt/msg00029.txt.bz2 From: Florian Weimer Reviewed-by: Carlos O'Donell (cherry picked from commit 08c6e95234c60a5c2f37532d1111acf084f39345) --- ChangeLog | 5 +++++ sysdeps/gnu/unwind-resume.c | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4d6686a9f5..82767ac063 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2018-01-11 Florian Weimer + + * sysdeps/gnu/unwind-resume.c (__libgcc_s_init): Update comment + and error message. + 2018-01-16 Florian Weimer * nptl/Makefile (CFLAGS-tst-minstack-throw.o): Compile in C++11 diff --git a/sysdeps/gnu/unwind-resume.c b/sysdeps/gnu/unwind-resume.c index 5d25e73dd1..e81b65692a 100644 --- a/sysdeps/gnu/unwind-resume.c +++ b/sysdeps/gnu/unwind-resume.c @@ -35,13 +35,17 @@ __libgcc_s_init (void) void *resume, *personality; void *handle; - handle = __libc_dlopen (LIBGCC_S_SO); + /* Use RTLD_NOW here for consistency with pthread_cancel_init. + RTLD_NOW will rarely make a difference here because unwinding is + already in progress, so libgcc_s.so has already been loaded if + its unwinder is used. */ + handle = __libc_dlopen_mode (LIBGCC_S_SO, RTLD_NOW | __RTLD_DLOPEN); if (handle == NULL || (resume = __libc_dlsym (handle, "_Unwind_Resume")) == NULL || (personality = __libc_dlsym (handle, "__gcc_personality_v0")) == NULL) __libc_fatal (LIBGCC_S_SO - " must be installed for pthread_cancel to work\n"); + " must be installed for unwinding to work\n"); #ifdef PTR_MANGLE PTR_MANGLE (resume); -- 2.19.2