X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:subject:date:message-id:references :in-reply-to:content-type:content-id:content-transfer-encoding :mime-version; q=dns; s=default; b=RkQ39Cr0uc1he4BAz7sWaWR0vpNRW i21+IYXaKFxOkfy0lV4O47podQ7Ah+Vas3FwTycajqMNRxTcIRKg8SpP8rE1cv9i MBGwKs5pnQ3HcJL9vDXDvuVtbrT3jU7x/8xcwufByqVO1N+0StRSSqznvLno/vZp o+TY65VJdCNu+I= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:subject:date:message-id:references :in-reply-to:content-type:content-id:content-transfer-encoding :mime-version; s=default; bh=UTrL4fw9JgIvlZmdnMMBsXFCo8Y=; b=gU/ JpwAO74dLl0ZlWkOyuavL9VcKswQsv9JOKpX+gvDHJ9oFL/+A6NtO8lbEvkgFQX2 U6jjXRSzjpGKsPSVGp2Rj6ZpI63G1eBmCDCOz2Xc5iS1lJ6V+d7bM8PT8gEntwLJ khlk5oV/XgmOIIyIWAwLp5EGnuXfM3KeWHHI4M04= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-11.4 required=5.0 tests=BAYES_00,GIT_PATCH_2,GIT_PATCH_3,KAM_NUMSUBJECT,MIME_BASE64_BLANKS,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=retry, tomorrow X-HELO: NAM02-SN1-obe.outbound.protection.outlook.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cornell.edu; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Qqy6V7Ah52KpWGz0tii5xEYXISj+FkQxMWYthJ4eEzM=; b=o91Rn49Ezns3hCMYHkFDL/bjzL17kFJre1lUHLFfVQWDw7+0nxHLV7mWFxNiaGUcTgjitYlaQWouHY1syP6RfSArM6dB7pYxGCjUREij+5U18xXb4HRB4NhrU+u3V7z02Hqxwhs5UXyuMIl0xOKq9ym9me7lMbLS8QBycY+Lq8Y= From: Ken Brown To: "cygwin AT cygwin DOT com" Subject: Re: fixup_mmaps_after_fork failure with cygwin-3.0.0 Date: Sun, 17 Feb 2019 14:56:49 +0000 Message-ID: <0587a444-6849-b35f-60b1-700282408f07@cornell.edu> References: <1d506605-a0af-12c2-6faf-ac74ab842182 AT cornell DOT edu> <20190217090820 DOT GI4256 AT calimero DOT vinschen DOT de> <20190217091308 DOT GK4256 AT calimero DOT vinschen DOT de> In-Reply-To: <20190217091308.GK4256@calimero.vinschen.de> user-agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 authentication-results: spf=none (sender IP is ) smtp.mailfrom=kbrown AT cornell DOT edu; received-spf: None (protection.outlook.com: cornell.edu does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 Content-Type: text/plain; charset="utf-8" Content-ID: <8757EF95DDFB1F449DC8D53D3B949893 AT namprd04 DOT prod DOT outlook DOT com> MIME-Version: 1.0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-IsSubscribed: yes Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by delorie.com id x1HEv4Sn030633 On 2/17/2019 4:13 AM, Corinna Vinschen wrote: > On Feb 17 10:08, Corinna Vinschen wrote: >> On Feb 17 00:11, Ken Brown wrote: >>> I'm getting a lot of errors like this when building emacs from its git repo: >>> >>> EMACSLOADPATH= '../src/emacs.exe' -batch --no-site-file --no-site-lisp --eval >>> '(setq load-prefer-newer t)' -f batch-byte-compile ../../master/lisp/finder.el >>> 1 [main] emacs 26848 fixup_mmaps_after_fork: VirtualProtectEx failed for >>> MAP_PRIVATE address 0x6FFFFCD0000, Win32 error 5 >>> 190 [main] emacs 26848 C:\Users\kbrown\src\emacs\x86_64\src\emacs.exe: *** >>> fatal error in forked process - recreate_mmaps_after_fork_failed >>> 619 [main] emacs 26848 cygwin_exception::open_stackdumpfile: Dumping stack >>> trace to emacs.exe.stackdump >>> 1 [main] emacs 27052 fork: child -1 - forked process 26848 died >>> unexpectedly, retry 0, exit code 0x100, errno 11 >> >> Weird. I built at least gawk and openssh with 3.0 already and I >> didn't notice this problem. >> >>> A bisection points to the following as the first bad commit: >>> >>> commit 69cc7a068656b5c6ef07ca079a213f801e02e650 >>> Author: Corinna Vinschen >>> Date: Sun Jan 27 13:15:15 2019 +0100 >>> >>> Cygwin: fork: restrict parent handle perms and drop handle after use >>> >>> >>> I'll try to do some debugging and/or provide further information tomorrow, but I >>> thought I'd start with this preliminary report. >> >> That would be nice. It's not clear to me which permission is missing. >> The first part of the patch has been reverted in 3.0.0, so >> child_info_spawn::get_parent_handle opens the parent with >> PROCESS_VM_READ again. The second patch has been reworked as well,m >> the current perms are >> >> PROCESS_QUERY_LIMITED_INFORMATION | PROCESS_VM_READ | SYNCHRONIZE >> >> If I may place a bet, please try to replace >> PROCESS_QUERY_LIMITED_INFORMATION with PROCESS_QUERY_INFORMATION That didn't change anything. Just to make sure I understood correctly, here's what I tried: --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -814,7 +814,7 @@ child_info::child_info (unsigned in_cb, child_info_types chtype, allow the child to copy cygheap etc. from the parent to itself. If we're forking, we also need handle duplicate access. */ parent = NULL; - DWORD perms = PROCESS_QUERY_LIMITED_INFORMATION | PROCESS_VM_READ + DWORD perms = PROCESS_QUERY_INFORMATION | PROCESS_VM_READ | SYNCHRONIZE; if (type == _CH_FORK) { > On second thought, an even better candidate may be PROCESS_VM_OPERATION. That's even worse. With that change, simply invoking 'make' leads to the same error. >> What OS is that? W7? W10 1803 with WSL installed. I'll keep looking at this, but let me know if you have further ideas. It would be nice if I could come up with a simple test case, but at the moment all I have is, "clone the emacs git repo and try to build". Ken -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple