From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from sa-prd-fep-048.btinternet.com (mailomta10-sa.btinternet.com [213.120.69.16]) by sourceware.org (Postfix) with ESMTPS id 87D053858D20 for ; Fri, 28 Jul 2023 15:17:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 87D053858D20 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=dronecode.org.uk Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=dronecode.org.uk Received: from sa-prd-rgout-004.btmx-prd.synchronoss.net ([10.2.38.7]) by sa-prd-fep-048.btinternet.com with ESMTP id <20230728151704.CAVY7361.sa-prd-fep-048.btinternet.com@sa-prd-rgout-004.btmx-prd.synchronoss.net> for ; Fri, 28 Jul 2023 16:17:04 +0100 Authentication-Results: btinternet.com; auth=pass (PLAIN) smtp.auth=jonturney@btinternet.com; bimi=skipped X-SNCR-Rigid: 6406812D10A219AE X-Originating-IP: [86.139.167.52] X-OWM-Source-IP: 86.139.167.52 (GB) X-OWM-Env-Sender: jonturney@btinternet.com X-VadeSecure-score: verdict=clean score=0/300, class=clean X-RazorGate-Vade: gggruggvucftvghtrhhoucdtuddrgedviedrieeigdekgecutefuodetggdotefrodftvfcurfhrohhfihhlvgemuceutffkvffkuffjvffgnffgvefqofdpqfgfvfenuceurghilhhouhhtmecufedtudenucenucfjughrpegtkfffgggfuffvfhfhjgesmhdtreertdefjeenucfhrhhomheplfhonhcuvfhurhhnvgihuceojhhonhdrthhurhhnvgihsegurhhonhgvtghouggvrdhorhhgrdhukheqnecuggftrfgrthhtvghrnhepvdfhkeeuieeugeefjeejlefghffhieelueejtdegieejveduvdfggfeifffhuddtnecuffhomhgrihhnpehgnhhomhgvrdhorhhgnecukfhppeekiedrudefledrudeijedrhedvnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehhvghloheplgduledvrdduieekrddurddutdeingdpihhnvghtpeekiedrudefledrudeijedrhedvpdhmrghilhhfrhhomhepjhhonhdrthhurhhnvgihsegurhhonhgvtghouggvrdhorhhgrdhukhdpnhgspghrtghpthhtohepuddprhgtphhtthhopegthihgfihinhdquggvvhgvlhhophgvrhhssegthihgfihinhdrtghomhdprhgvvhfkrfephhhoshhtkeeiqddufeelqdduieejqdehvddrrhgrnhhgvgekiedqudefledrsghttggvnhhtrhgrlhhplhhushdrtghomhdprghuthhhpghushgvrhepjhhonhhtuhhrnhgvhiessghtihhnthgvrhhnvghtrdgtohhmpdhgvghokffrpefiuedpoffvtefjohhsthepshgrqdhprhgu qdhrghhouhhtqddttdeg X-RazorGate-Vade-Verdict: clean 0 X-RazorGate-Vade-Classification: clean Received: from [192.168.1.106] (86.139.167.52) by sa-prd-rgout-004.btmx-prd.synchronoss.net (5.8.814) (authenticated as jonturney@btinternet.com) id 6406812D10A219AE for cygwin-developers@cygwin.com; Fri, 28 Jul 2023 16:17:04 +0100 Content-Type: multipart/mixed; boundary="------------GBxzvl69C9uG0ZGoLPve4w0C" Message-ID: Date: Fri, 28 Jul 2023 16:17:03 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: Re: glib2.0 2.64.6-1 (TEST) Content-Language: en-GB To: cygwin-developers@cygwin.com References: From: Jon Turney In-Reply-To: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,JMQ_SPF_NEUTRAL,KAM_DMARC_STATUS,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. --------------GBxzvl69C9uG0ZGoLPve4w0C Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 26/07/2023 15:33, Corinna Vinschen wrote: > On Jul 3 15:49, Jon Turney wrote: >> On 02/07/2023 15:30, Jon Turney wrote: >>> >>> There are many test-suite failures, however, as far as I can tell, they >>> are not regressions, so this should work as well as it ever did. >> >> At least some of these test failures are due to bugs or shortcomings in the >> Cygwin DLL. In an ideal world, I'd have the time and motivation to >> investigate them all, but here's a brief summary of the few I looked into >> ... > >> stream_rw-all: writes to a pipe until it's full, then ends up blocking when >> poll() still indicates it's writeable? > > Pipes never worked 100% POSIX-like, unfortunately, but the hang > was supposed to be fixed by introducingh the semaphore select_sem. > > Do you have an STC? Takashi, can you take a look? So, I messed up: it's a socketpair, not a pipe. And I typoed the test name, it's actually stream-rw_all If I'm remembering correctly, it ends up getting stuck at: https://gitlab.gnome.org/GNOME/glib/-/blob/main/gio/tests/stream-rw_all.c#L179 I think this boils down to just: - create a socketpair - while polling if socket is writeable, write 100 zeroes to socket This should stop when socket is not writeable, but actually just seems to block in the write. Attached is an attempt at that, stripping out the glib stuff, which does indeed gets stuck. But maybe I messed up, the expectations of the test aren't good... --------------GBxzvl69C9uG0ZGoLPve4w0C Content-Type: text/plain; charset=UTF-8; name="socketpair_full.c" Content-Disposition: attachment; filename="socketpair_full.c" Content-Transfer-Encoding: base64 I2luY2x1ZGUgPGFzc2VydC5oPgojaW5jbHVkZSA8cG9sbC5oPgojaW5jbHVkZSA8c3RkaW8u aD4KI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KI2luY2x1ZGUgPHVuaXN0ZC5oPgoKaW50IG1h aW4oKQp7CiAgY2hhciB3YnVmWzEwMF0gPSB7IDAsIH07CiAgaW50IG91dDsKCiAgewogICAg aW50IHN2WzJdOwogICAgaW50IHM7CgogICAgcyA9IHNvY2tldHBhaXIgKEFGX1VOSVgsIFNP Q0tfU1RSRUFNLCAwLCBzdik7CiAgICBhc3NlcnQgKHMgPT0gMCk7CgogICAgb3V0ID0gc3Zb MF07CiAgfQoKICBzaXplX3QgaW5fZmxpZ2h0ID0gMDsKICB3aGlsZSAoMSkKICAgIHsKICAg ICAgc3RydWN0IHBvbGxmZCBmZHNbMV07CiAgICAgIGZkc1swXS5mZCA9IG91dDsKICAgICAg ZmRzWzBdLmV2ZW50cyA9IFBPTExPVVQ7CgogICAgICBpbnQgciA9IHBvbGwoZmRzLCAxLCAw KTsKICAgICAgYXNzZXJ0KHIgPj0gMCk7CgogICAgICAvLyBmZCBpcyBub3QgcmVhZHkgdG8g d3JpdGUKICAgICAgaWYgKCEoZmRzWzBdLnJldmVudHMgJiBQT0xMT1VUKSkKICAgICAgICBi cmVhazsKCiAgICAgIC8vIG90aGVyd2lzZSwgZmQgaXMgcmVhZHkgdG8gd3JpdGUsIGltcGxp ZXMgc29tZSBkYXRhIG1heSBiZSB3cml0dGVuIHdpdGhvdXQgYmxvY2tpbmcKICAgICAgc3Np emVfdCBzID0gd3JpdGUgKG91dCwgd2J1Ziwgc2l6ZW9mIHdidWYpOwogICAgICBhc3NlcnQg KHMgPiAwKTsKICAgICAgaW5fZmxpZ2h0ICs9IHM7CiAgICAgIHByaW50ZigiJXpkIHdyaXR0 ZW4sIHRvdGFsIGluX2ZsaWdodCAlemRcbiIsIHMsIGluX2ZsaWdodCk7CiAgICB9Cn0K --------------GBxzvl69C9uG0ZGoLPve4w0C--