delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2021/11/09/17:22:03

X-Recipient: archive-cygwin AT delorie DOT com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 528133858430
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
s=default; t=1636496522;
bh=gW/1vYZPGhm5zpnJEMf7xrykOJheOrkMkRetOV3Yh8w=;
h=Date:Subject:To:References:In-Reply-To:List-Id:List-Unsubscribe:
List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:
From;
b=yz+JpyOsV618psUONMH9jYPWAqp33d75Pso1gqxkH8KIseFn0BKF1IH1efyGbTBjl
xF3JLrtQ+4s8ljSV4fqHAJC1PdEcJK5f8Msyd90Go4enV01BgFvu5lDHXaER/6mFan
RRT0jS3Nd2C64+GsKskO/cH5bqFFQ5aqFQEtPKbg=
X-Original-To: cygwin AT cygwin DOT com
Delivered-To: cygwin AT cygwin DOT com
DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 892953858404
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
b=i0MjOY69d6U4XF7TypBi8eVhhJ+PdRioSbCBJW/y16ztoJzEZGYBBrt2mfldo5Cxw7d6POF7H5/9cL8aXyhWyvf0JKQcJJs4KXdNzMOyNsCnf9frjH45/5ZQVe1plBtE4fGryxJps0Lb97K1FNAw3PG2JEIhfqJ3ZXK2AMpedYb/QjzMqP40DilruE3ek2GGM5mN1R8U+PXKf5mYqk25WVgmMe/ZqyUTw2s9sX0ONDlDMKb3FNAB7Ymg11QnG6C4hqHmD8F+CuAs509IuDGhvbCaNEYYD0//1orH8QR3CebeKWIufuGz4AKS53WJpUHeVTs2pcSPunu2CDS0Jemb/g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
s=arcselector9901;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
bh=jGM4/ikQyKEhN5FhLFRLselNoIJCeFWD/yeDk8d7qW4=;
b=henJBpS3bpnGglXqOOHVOVxbiPwFLEV+xXIAEGi7T6loiKPXLaqzsnu6plhL0ruwWS1rptm3hU3PXrwmv5U5uPOQM2DmqXSOiV+yoWio6zGxgo82xHBK6eSUResxiEBFcJrM5dCBC0i1SXpNQ5SRO/cEYYx6eFDTUBCgDzeJBEmt0T17j6VOlpoQy9JgiwV2dw6uDRVKHbA0vd/YgsKPNi7TSlvuNfqknx1CI+RtgipQ9r3V7pHRg06v+R/lc5FasMme8obavMp1gmq+YWI/qc9OY5vlIkY2/jv2janljjLtS1M2fZWCM7/RPE0x8B66uvJxBRHCCG96PzGfL5Rxcg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
smtp.mailfrom=cornell.edu; dmarc=pass action=none header.from=cornell.edu;
dkim=pass header.d=cornell.edu; arc=none
Message-ID: <75197fd0-d5da-3236-a7df-b8ffc3f67da7@cornell.edu>
Date: Tue, 9 Nov 2021 17:20:48 -0500
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.3.0
Subject: Re: Another pipe-related problem?
To: cygwin AT cygwin DOT com
References: <f5br1bqaj11 DOT fsf AT ecclerig DOT inf DOT ed DOT ac DOT uk>
<05c4180e-396b-4af3-ac0c-2ab8125df17e AT cornell DOT edu>
<f5bk0hh8uox DOT fsf AT ecclerig DOT inf DOT ed DOT ac DOT uk>
<eb8d7d4f-d1ed-6f30-2ac3-1b24166243d9 AT cornell DOT edu>
<0971ace1-5ee8-bdcc-5fd9-4551b294ebf8 AT cornell DOT edu>
In-Reply-To: <0971ace1-5ee8-bdcc-5fd9-4551b294ebf8@cornell.edu>
X-ClientProxiedBy: BL1PR13CA0441.namprd13.prod.outlook.com
(2603:10b6:208:2c3::26) To BN7PR04MB4388.namprd04.prod.outlook.com
(2603:10b6:406:f8::19)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 98b1ddb7-2346-4744-7a6d-08d9a3cf2fb7
X-MS-TrafficTypeDiagnostic: BN8PR04MB6163:
X-Microsoft-Antispam-PRVS: <BN8PR04MB616349A115747EC34A81CEEBD8929 AT BN8PR04MB6163 DOT namprd04 DOT prod DOT outlook DOT com>
X-MS-Oob-TLC-OOBClassifiers: OLM:7691;
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: gWo+cc8r94AKbg1aU0aLcXb8CNxWs/GumIkWsrpF6n5Djoi461OqZ1LIqFZuErWWDMsUwRk1S9KTiwUzBemI36ivBnRjfRZ7M4jJPOR/KBZJ73W42Oto08D5V+oLx6WLk0WYfODoeNNkEO+akjRI7l8OpC16OPLb3CwgRNhpwMbK3Qzg+JQetBNiBqs3xV0VPMtZJP8GSqcB84z44qRIehk78XqwAhacsZvJTGuFSYOw9PWfYhdyyjAgLDiq3VcASlJo1/PJ8iKgz6B9I0LW78qyjEQEYiavsHf/cR12tDGpFlVrWHbY33ARvsLWEhXxG/SQ2cZxUuSC/nmdgYwi/SYjP0RSUgXWI4rap3xkGSGJlyaGFJOY6a0JZyg6HA8WCpjVHVXKMKz2OZv1B7iZfBWvAF/WK370CNdXJL79Oc/pHDMTCqakmXRrUrNJG0k7FbhJbq5GoLF97DK/kE6Ga3xO5vzeTVbE9Z8nR5s57tJM/u1oey6X4vb/fbXaBwmeylAL0A1o6UqIfRJ5XJzBF6oM3GyXq37F02LV5TXn09SARaexUs4Ss8lO3XKYLkd0CdPomx9UyBJcXzfLjD6kJXZvE0yJpuifunUDK+S01Ff7V179eRZ9C1nyrsVBV7HGWJW9cDuYRul6XllwKMhPnx2bBV/duWV904l+Vs7E5xxADPwmjQrpRevf2NSnV6OctFEH9+rtlWUg54pE0tDCL888YoJX2c/PHvJu7nrdqow=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
IPV:NLI; SFV:NSPM; H:BN7PR04MB4388.namprd04.prod.outlook.com; PTR:; CAT:NONE;
SFS:(4636009)(366004)(31696002)(786003)(2616005)(38100700002)(316002)(8936002)(8676002)(53546011)(6916009)(66556008)(31686004)(66476007)(66946007)(6486002)(86362001)(186003)(5660300002)(508600001)(2906002)(83380400001)(3480700007)(75432002)(36756003)(43740500002)(45980500001);
DIR:OUT; SFP:1102;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?R05aKzQwbDhLVWd2cW9PclBNY1laZ1I3OXExanhwTUg4TUZhZ09jM3MrblE5?=
=?utf-8?B?SUlFWDZmcUllUUtvSmhFdUhxaFdKR2hRamZpYXBEMjZBSHVSVkYyZStoRFFU?=
=?utf-8?B?MUpRbXR2WktkaG9aSUZZNUZWdFNncXh6cDFSN1NMN2NxQkhBanZocGRYWlU4?=
=?utf-8?B?N0pDS1BqMGwyREI0c0ZzamlIeVRBcU50M09WSVk5VXUzT3Q1dmVXbzZpTFZx?=
=?utf-8?B?WUE1NWRONXQ5VHRtcjlSMXdlQklkZTVMMnBoa2E5UGxLdERVdVFrWlQwRFVj?=
=?utf-8?B?L2NiZUNKV2ZGM1NlOUZmbWxZMlFLenNNaHQ3WU12T05vaER2TVo4L1cyOGxn?=
=?utf-8?B?QnhKakZWWitvY0xVOE9xdWplRDd3Q1l4c25MOFFsS1UrSjA1a250cVJBS2Rr?=
=?utf-8?B?d0E0ZFo5RStPdERrSGtkQnEzcFc5UGhZMnFLN0E4TkdxQUxRbjRxN1NiY1Q0?=
=?utf-8?B?YWh4Ly9YUWxFcUNmS09MQkg2UmNYZ1lmQ1p0NjRScTc3M1ZxNkJWMTMwU3Zm?=
=?utf-8?B?eDRmTE5WeTU0dG5yQjRWRC95bTUxMkRINVlyd090OG8vMXp5RVc5WWRhanVn?=
=?utf-8?B?aHZrc29Dd0xDdDNHKzlRQjJrdjBlZGZqNDBNTEhHNEpJZ2lUcmpPTlB4ZStF?=
=?utf-8?B?c2xMS20zSjl5akpubkxzam1SdEFjazdEc2QyRWY0SXdpMU04MzEzc0Q0NmhX?=
=?utf-8?B?NDdIOVR3RWhFQ0hVOVJDQ2ZWdE5xQ0xCamE0L3JONUxXL2EwYlpvMk5XeVhG?=
=?utf-8?B?dTdtUThOa2UvWlRiWi9ZWUtrQktXc0t0ckpUNi80SDc1OVJjOVRtQjZMbTZq?=
=?utf-8?B?WEJvOHVGaTVEaWlKclVGTWFqZ0lvSThRZHRyb205M3BoTDhWQmwxMnZFc0JT?=
=?utf-8?B?Q2dmOXNFSDg0M0RMWGg5QzhFeHM0bGlKdElhVTlabW9MWWo3ZVRNUXNEdE5V?=
=?utf-8?B?K1RnMTFEU20yaWowQW9tRzhyeXpIcXZlc1hLNjc4dXFHcWpnbkRFUTN2V1pm?=
=?utf-8?B?alQxL00wM21RRVErYThkZWdJTHVBQVBPU3FmUWc5VDdNNExRcVpsS05tSWRj?=
=?utf-8?B?cXVySTNGbEdPbXlKS1lCMU1QaDhkN0Z1UVNrQmdMUlFyRmpBN21MbVFIZGM4?=
=?utf-8?B?QldsdVpCU2l1Y0FmTjBLZXM5NVA4U09Tc0VxQXkwVlZVWXNBMUJpQWRPRi9D?=
=?utf-8?B?RFJReHY0WURvQ045ODhVSnhMRzR6ak5CaDZLUzdsOS9qNVlOK1NPTjAxanVE?=
=?utf-8?B?WXNPbkwzWkUrbE5lUzAxS2Z5SlJRRUFrWU5zYmRQZHRJUUNlUk9haFVBNnBl?=
=?utf-8?B?ZXUwSGtWNnIxSEpSdm5SdFZubDlVc3VlVnV3MGRuZ1NORVpmSkprV2VsVnJ2?=
=?utf-8?B?cXRRckFMUHZRR0lYSVJoNmxUOW1ya1g4UzN3SFh2MlhESzZnYXlpdWxqU21I?=
=?utf-8?B?UnBHM3JDd1Yvb0ZubzNwZGg2bmJYZVU0YXZMS2hJN3JtTW1uWTE2dkJ5L1pj?=
=?utf-8?B?Rk5odi83bDFaRFNzc3RUcTdlZjFqNnFNU1E2RE1zK0Q3SW9ES1F4SFlwMlo2?=
=?utf-8?B?cG1aVTZ6R2hCeDJvdE1lQWNnd0srOXRUbHZLVnpDVmxtcllJMmFOQWt5cHhV?=
=?utf-8?B?TVgrZTFLN0tmTGVPSTM2NUhRcEl3OUptdTZtRHFGeU04eVRxdHVkRnVCbWtj?=
=?utf-8?B?Q3RPRFZ6N2M2L3VqcXZZMDlEWjdhZkZrZlVtdnhKMWZPMGNtMi9MSkkvZmF2?=
=?utf-8?B?L3MrWmc2QkNiOWZMcUFFV1duTHhSZDM3OFhiZHovQXJwSkRLbWV6bVZoakNC?=
=?utf-8?B?V3pTTGhQVEJaMUhUcjlsMDViQnRmMThoVVJFaUZUekF0amsxRGNRbTQ5SGUv?=
=?utf-8?B?VGh2ZHFwcnp2dVV5Mm04L3h4aHBsRjJUWTFDckp2YXZybHNmWFp3SmMxK01W?=
=?utf-8?B?cDNCR05SM29yK1JpckJUbWpSWTJJblowYTloTEFYa0ZmUHJQOE96cGZOdjlx?=
=?utf-8?B?UEpwY3FWdjJRVHF5S0cxSzZqZnhOQjkramFZdTd5VUlvN1FKWDU3anZmVU1I?=
=?utf-8?B?TjVPU3BxMVdQZUNhK2FIM2wranFhcmV6UW5MSXV6dnNySG4yRXFkYTZOSmVn?=
=?utf-8?B?M3k2VTdBdWYxOG1PanBEVDh6emZyRVRyOWo0eHhQZDlZV05zL0ViVnIxM2M1?=
=?utf-8?B?QXdaTGo3enUwRTBBcmorb2liTFhKTGdDaXFuN3VGdUtuUEc4VnFlKzR4Wnpz?=
=?utf-8?Q?sn8WQWMnrch4TUrb6BkgmDXASnBLvsaPs341RF1Q90=3D?=
X-OriginatorOrg: cornell.edu
X-MS-Exchange-CrossTenant-Network-Message-Id: 98b1ddb7-2346-4744-7a6d-08d9a3cf2fb7
X-MS-Exchange-CrossTenant-AuthSource: BN7PR04MB4388.namprd04.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Nov 2021 22:20:50.5276 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 5d7e4366-1b9b-45cf-8e79-b14b27df46e1
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9XWgYSJfSnCztEh9ZcVwt+K4swfACcuSg7ILPsTY1uZdW3WD8i9k0VatipRNQMUQw014YDJxDJqF8Z4Z7tyW9A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR04MB6163
X-Spam-Status: No, score=-3.6 required=5.0 tests=BAYES_00, BODY_8BITS,
DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, MSGID_FROM_MTA_HEADER,
NICE_REPLY_A, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS,
TXREP, URIBL_SBL_A autolearn=ham autolearn_force=no version=3.4.4
X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on
server2.sourceware.org
X-BeenThere: cygwin AT cygwin DOT com
X-Mailman-Version: 2.1.29
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-request AT cygwin DOT com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=subscribe>
From: Ken Brown via Cygwin <cygwin AT cygwin DOT com>
Reply-To: Ken Brown <kbrown AT cornell DOT edu>
Sender: "Cygwin" <cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com>
X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 1A9MM30W009404

On 11/9/2021 5:16 PM, Ken Brown via Cygwin wrote:
> On 11/9/2021 9:11 AM, Ken Brown via Cygwin wrote:
>> On 11/9/2021 5:55 AM, Henry S. Thompson wrote:
>>> As you may know, the XEmacs situation is complicated.  The old source
>>> repo (bitbucket.org/xemacs) no longer exists.  There's a fork that's
>>> still being maintained, but it's not widely publicised.  That's the
>>> one I'm working with -- are you aware of this.
>>
>> I was aware that the bitbucket repo didn't exist, because I tried to get the 
>> sources there.  But I didn't know about the fork.  Please point me to it, or 
>> just make a tarball available to me somehow.
>>
>>> Here are the immediate contexts from the sources for the xemacs
>>> sources in the above backtrace, might be enough to check your
>>> hypothesis:
>>>
>>> sysdep.c:
>>>
>>>    retry_read_1 (int fildes, void *buf, size_t nbyte, int allow_quit)
>>>    {
>>>      ssize_t rtnval;
>>>
>>>      while ((rtnval = read (fildes, buf, nbyte)) == -1
>>>             && (errno == EINTR))                         <<<<<<<<<<<<<<<<<<<<
>>>        {
>>>          if (allow_quit)
>>>            QUIT;
>>>        }
>>>      return rtnval;
>>>    }
>> I'll have to reproduce the hang myself in order to test this (or maybe you 
>> could test it), but I now have a new guess: If the read call above keeps 
>> failing with EINTR, then we're in an infinite loop.  This could happen because 
>> of the following code in fhandler_pipe::raw_read:
>>
>>    DWORD waitret = cygwait (read_mtx, timeout);
>>    switch (waitret)
>>      {
>>      case WAIT_OBJECT_0:
>>        break;
>>      case WAIT_TIMEOUT:
>>        set_errno (EAGAIN);
>>        len = (size_t) -1;
>>        return;
>>      default:
>>        set_errno (EINTR);
>>        len = (size_t) -1;
>>        return;
>>      }
>>
>> Takashi, is EINTR really the appropriate errno in the default case?  Isn't 
>> cygwait supposed to handle signals?
> 
> I was able to build XEmacs and reproduce the problem.  My guess was wrong, 
> though my question to Takashi still stands.  I think the infinite loop is 
> actually caused by a bug in fhandler_pipe::raw_read that only affects 
> non-blocking pipes (which is what we have in XEmacs).
> 
> Consider the following code in fhandler_pipe::raw_read:
> 
>        status = NtReadFile (get_handle (), evt, NULL, NULL, &io, ptr,
>                 len1, NULL, NULL);
>        if (evt && status == STATUS_PENDING)      <<<<<<<<<<<<<<<<<<<<<<<<<<<<
>      {
>        waitret = cygwait (evt, INFINITE, cw_cancel | cw_sig);
> [...]
>      }
> 
> In the non-blocking case, evt == NULL, but we still might have status == 
> STATUS_PENDING.  We then should wait on get_handle() to let NtReadFile finish. 
> By not waiting, we end up using a garbage value from io.Information, leading to 
> an infinite loop in drain_signal_event_pipe.
> 
> I'll try to fix this.

BTW, a quick glance at raw_write suggests that there might be a similar bug 
there, but I'll have to look more closely.

Ken

-- 
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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019