From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from conssluserg-03.nifty.com (conssluserg-03.nifty.com [210.131.2.82]) by sourceware.org (Postfix) with ESMTPS id 886B93858CDA for ; Tue, 10 Jan 2023 10:02:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 886B93858CDA Authentication-Results: sourceware.org; dmarc=fail (p=none dis=none) header.from=nifty.ne.jp Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=nifty.ne.jp Received: from HP-Z230 (aj135041.dynamic.ppp.asahi-net.or.jp [220.150.135.41]) (authenticated) by conssluserg-03.nifty.com with ESMTP id 30AA1jQs004136 for ; Tue, 10 Jan 2023 19:01:46 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conssluserg-03.nifty.com 30AA1jQs004136 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.ne.jp; s=dec2015msa; t=1673344906; bh=4IijkoKpE4FNkhnClEIQQkwUBg0YPkJAPKwn5AI5j4w=; h=Date:From:To:Subject:In-Reply-To:References:From; b=Yt+j5UROJYM1zeGT2Y+JN819MAVgBdqm5VmpMQGkRAGAR38nO0Q7AS0w3tKsnhK/H U8NLuEqbE+gHEetlsn16GJzA4PVbSgdRLAkovip6A4eyu1cszkXBL8weosDPxHePoV uopOOFAS02acbX5SjTUAt8yNG5RBUvaUc40pxo09ueaYKE2nKkNg0eaUqzlaw8JxO4 6cSlP/HIycL2TDWbDR6TlFKI/m6nBbym2wrawvbRaI5bJ131UOkvPADx/M/K65syCo zCi3k7WE5QhJxJYIV2kVhMJN3I9zk685FfbvNBa7jn1dnKxy31/+QtCyVjR4bxq+sq T8deZyAflAiVA== X-Nifty-SrcIP: [220.150.135.41] Date: Tue, 10 Jan 2023 19:01:45 +0900 From: Takashi Yano To: cygwin@cygwin.com Subject: Re: Cygwin 3.4.3 and 3.5.0... hangs in make, top, procps, ls /proc/PID/... Message-Id: <20230110190145.ed5438f6c7a9d979899fa823@nifty.ne.jp> In-Reply-To: References: <4a4427cc-422b-1d14-015e-26523e620d9b@Shaw.ca> <20230102113201.476c10bef7a5643bddc00762@nifty.ne.jp> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.30; i686-pc-mingw32) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-10.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Mon, 9 Jan 2023 18:13:26 +0100 Corinna Vinschen wrote: > If q->sigtls is NULL, the signal is nevertheless waiting for being > handled. It's just not directed at a specific thread. Beats me, why > this didn't occur in my testing. The process signal info should contain > the process-wide mask of pending signals as well, obviously, so the > following patch should do the right thing: > > diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc > index ce36c8be37fb..86e4e607ab7e 100644 > --- a/winsup/cygwin/sigproc.cc > +++ b/winsup/cygwin/sigproc.cc > @@ -1375,7 +1375,8 @@ wait_sig (VOID *) > *pack.mask = 0; > while ((q = q->next)) > { > - if (q->sigtls->sigmask & (bit = SIGTOMASK (q->si.si_signo))) > + _cygtls *sigtls = q->sigtls ?: _main_tls; > + if (sigtls->sigmask & (bit = SIGTOMASK (q->si.si_signo))) > { > tl_entry = cygheap->find_tls (q->si.si_signo, issig_wait); > if (tl_entry) > > Can you confirm? I confirmed that your patch fixes the issue. This issue can be easily reproduced in my environment by: 1) Open two mintty windows. 2) Run "while true; do procps; done" in one mintty. 3) Build cygwin1.dll in another window. Build hangs in a short time and response of procps slows down. -- Takashi Yano