From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 Received: (qmail 22643 invoked from network); 2 Apr 2020 15:08:48 -0000 Received-SPF: pass (mother.openwall.net: domain of lists.openwall.com designates 195.42.179.200 as permitted sender) receiver=inbox.vuxu.org; client-ip=195.42.179.200 envelope-from= Received: from mother.openwall.net (195.42.179.200) by inbox.vuxu.org with UTF8ESMTPZ; 2 Apr 2020 15:08:48 -0000 Received: (qmail 15707 invoked by uid 550); 2 Apr 2020 15:08:45 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 15680 invoked from network); 2 Apr 2020 15:08:44 -0000 Date: Thu, 2 Apr 2020 11:08:31 -0400 From: Rich Felker To: musl@lists.openwall.com Message-ID: <20200402150831.GB11469@brightrain.aerifal.cx> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Subject: Re: [musl] [PATCH] atexit: Unlock after executing exit functions On Thu, Apr 02, 2020 at 03:56:58AM +0000, wangjianjian (C) wrote: > >From 0bf59dbec10f1267419696ee5b3aa9ace1379ee2 Mon Sep 17 00:00:00 2001 > From: Wang Jianjian > Date: Thu, 2 Apr 2020 11:51:13 +0800 > Subject: [PATCH] atexit: Unlock after executing exit functions > > Signed-off-by: Wang Jianjian > --- > src/exit/atexit.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/src/exit/atexit.c b/src/exit/atexit.c > index 160d277a..d30db5df 100644 > --- a/src/exit/atexit.c > +++ b/src/exit/atexit.c > @@ -27,6 +27,7 @@ void __funcs_on_exit() > func(arg); > LOCK(lock); > } > + UNLOCK(lock); > } > > void __cxa_finalize(void *dso) > -- > 2.17.1 This patch is not correct and not fixing any bug; rather it introduces a race condition whereby it's possible for atexit() to return success adding a new handler, but the handler never runs. On a higher level, a patch like this needs a commit message (or email body text intended to be reworded into one) explaining what behavior you believe is being fixed by the patch. As submitted the title doesn't give any hint at a reason why it should be done. Rich