DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 56GFaLi73193155 Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 56GFaLi73193155 Authentication-Results: delorie.com; dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=cosl4KOs X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E67EF3857BBB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1752680179; bh=o6IWd9xLnJiWJOy0GpYCK3/lX9ErYZwe4wnfJQF31Zw=; h=Date:Subject:To:References:Cc:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=cosl4KOsklh+XKzzLifyc0V3dbK4S3cChxqYTKrxxHgqclIfRRBybpMlI6rvYoanC PwvJ92z2d/2DT40FZlsS8WlsWrgYbfSpfrqBzW6pT4IlSuEGE8pYcKyw0UJWGJLlyH IcLLHeG4/2097nWOD8WEy0XAFq0tGMEccfbluT5c= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 17473385801B ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 17473385801B ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1752680155; cv=none; b=YjSpwXyyeEwFLMwiyqPBXqfKlqc20KbylP6X9kAWjTyWC0GmRPShe6YuhDp02+oUu5jOSrFImw1GvPVMVu+ztgPymrIxGZWf2uIe+OQLIzC57VC0u4yE722tRJIV4QllcSKrqxaprmq3s42UJoNEc56KLEEHkF0YBdYw+eA2WZk= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1752680155; c=relaxed/simple; bh=yEukmcNLIyy9HCiIvCNRBJwkXRUBQYKj6VBzMfIyI+4=; h=Message-ID:Date:MIME-Version:Subject:To:From; b=gdF7Xq2hktwE8fhwQni++iyali3FGyyRanP35LHfepQDcXsVsexplBI76pZUaOjRYTWnJFNrdQ25+IxNKqyAei5DoWgsJtDwyvuOrj8JA8knqs6XcnyKduqSjMlIVJGAhf8USwPDMvW2V5ea1q8wxiCeQtoMLWfIe6VoJ502PkU= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 17473385801B X-SNCR-Rigid: 6864C0260177899D X-Originating-IP: [86.139.156.85] X-OWM-Source-IP: 86.139.156.85 X-OWM-Env-Sender: jon DOT turney AT dronecode DOT org DOT uk X-RazorGate-Vade: gggruggvucftvghtrhhoucdtuddrgeeffedrtdefgdehkedtlecutefuodetggdotefrodftvfcurfhrohhfihhlvgemuceutffkvffkuffjvffgnffgvefqofdpqfgfvfenuceurghilhhouhhtmecufedtudenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujfgurhepkfffgggfuffvfhfhvegjtgfgsehtjeertddtvdejnecuhfhrohhmpeflohhnucfvuhhrnhgvhicuoehjohhnrdhtuhhrnhgvhiesughrohhnvggtohguvgdrohhrghdruhhkqeenucggtffrrghtthgvrhhnpefggefhvddvieejtedtgfelteffteeftdeugfefveehtdehgfffleeftefhvdelffenucffohhmrghinheptgihghifihhnrdgtohhmnecukfhppeekiedrudefledrudehiedrkeehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehhvghloheplgduledvrdduieekrddurddutdelngdpihhnvghtpeekiedrudefledrudehiedrkeehpdhmrghilhhfrhhomhepjhhonhdrthhurhhnvgihsegurhhonhgvtghouggvrdhorhhgrdhukhdprhgvvhfkrfephhhoshhtkeeiqddufeelqdduheeiqdekhedrrhgrnhhgvgekiedqudefledrsghttggvnhhtrhgrlhhplhhushdrtghomhdprghuthhhpghushgvrhepjhhonhhtuhhrnhgvhiessghtihhnthgvrhhnvghtrdgtohhmpdhgvghokffrpefiuedpoffvtefjohhsthepsghtphhrughrghhotdduuddpnhgspghrtghpthhtohepvddprhgtphhtthho pegthihgfihinhestgihghifihhnrdgtohhmpdhrtghpthhtohepthgrkhgrshhhihdrhigrnhhosehnihhfthihrdhnvgdrjhhp X-RazorGate-Vade-Verdict: clean 0 X-RazorGate-Vade-Classification: clean X-VadeSecure-score: verdict=clean score=0/300, class=clean Message-ID: Date: Wed, 16 Jul 2025 16:35:45 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: doxygen hangs when many call graphs are generated. To: Takashi Yano References: <20250617214647 DOT ed6f64d44a665820a3fbd1b9 AT nifty DOT ne DOT jp> <20250716211359 DOT 8f40e5248fe69b9033cba081 AT nifty DOT ne DOT jp> <20250716213604 DOT 539ada3b63feb7c9e5c3ab05 AT nifty DOT ne DOT jp> Content-Language: en-US Cc: cygwin AT cygwin DOT com In-Reply-To: <20250716213604.539ada3b63feb7c9e5c3ab05@nifty.ne.jp> X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Jon Turney via Cygwin Reply-To: Jon Turney Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" On 16/07/2025 13:36, Takashi Yano via Cygwin wrote: > On Wed, 16 Jul 2025 21:13:59 +0900 > Takashi Yano via Cygwin wrote: > >> On Tue, 17 Jun 2025 21:46:47 +0900 >> Takashi Yano wrote: >>> I encountered a problem of doxygen when many call graphs are generated. >>> >>> How to reproduce: >>> 1) Make a empty directory. >>> 2) Place two files (Doxyfile, x.c) attached in the directory. >>> 3) Run doxygen in the directory. >>> >>> It seems that this is a bug of cygwin1.dll and the cause is >>> a deadlock in newlib/libc/stdio/findfp.c:__fp_lock_all(). >>> >>> The following patch solves the issue, however, I am not sure >>> this is the right thing at all. >>> >>> diff --git a/newlib/libc/stdio/findfp.c b/newlib/libc/stdio/findfp.c >>> index 2cc549537..3de6b33fd 100644 >>> --- a/newlib/libc/stdio/findfp.c >>> +++ b/newlib/libc/stdio/findfp.c >>> @@ -298,7 +298,9 @@ __fp_unlock (struct _reent * ptr __unused, FILE * fp) >>> void >>> __fp_lock_all (void) >>> { >>> +#ifndef __CYGWIN__ >>> __sfp_lock_acquire (); >>> +#endif >>> (void) _fwalk_sglue (NULL, __fp_lock, &__sglue); >>> } >>> >>> @@ -306,6 +308,8 @@ void >>> __fp_unlock_all (void) >>> { >>> (void) _fwalk_sglue (NULL, __fp_unlock, &__sglue); >>> +#ifndef __CYGWIN__ >>> __sfp_lock_release (); >>> +#endif >>> } >>> #endif >>> >>> Any suggenstions? >> >> The same hang happened while building aom package with doxygen. >> Above patch also solves the issue. >> >> Any idea? I think this is possibly the same problem as mentioned [1] [1] https://cygwin.com/pipermail/cygwin-apps/2025-May/044318.html > The stack trace is as follows. [...] Thanks very much for digging into this! (There do seem to be some changes around sfp locking in the 3.3.6 to 3.4.0 interval, which might explain why this shows up then...) -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple