delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2021/09/08/04:19:57

X-Recipient: archive-cygwin AT delorie DOT com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 60433385F02C
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
s=default; t=1631089196;
bh=ZM8Vn+4yF6DcZoAypTFtmbPvyRYbjsMdquto8rDqncs=;
h=Date:To:Subject:References:In-Reply-To:List-Id:List-Unsubscribe:
List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:
From;
b=X9Pqmuy4ezp5uDepNTjQDkTnIvTgModCy+msb3M2DVSLNwzFeKas7Sn267kFzxZ6/
JVRM66/J95qoa4/jn6Bicid6CgysDfRtUE+VKyKjnCl2JaAS2fKP9k8qygrDNQudBa
qb34zY/U+rOeuKIkQ10ECu/cfKlVIZo47YOsiaUQ=
X-Original-To: cygwin AT cygwin DOT com
Delivered-To: cygwin AT cygwin DOT com
DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org DCD293858407
Date: Wed, 8 Sep 2021 10:18:40 +0200
To: cygwin AT cygwin DOT com
Subject: Re: mmap failure [was: cygrunsrv + sshd + rsync = 20 times too slow
-- throttled?]
Message-ID: <YThx4K4s55y6WzTv@calimero.vinschen.de>
Mail-Followup-To: cygwin AT cygwin DOT com
References: <40275f71-7c10-55a9-e6c8-a948e32c37ac AT cornell DOT edu>
<YTY0oN9x7wNtJAKx AT calimero DOT vinschen DOT de>
<d3c9bb17-b859-e7b1-d7e6-c421d0f37836 AT cornell DOT edu>
<33ae27cb-4e45-7484-40d1-6cbd88c958f1 AT cornell DOT edu>
<YTZXGlvWWUk23bJI AT calimero DOT vinschen DOT de>
<YTZY/vytb7nagC6M AT calimero DOT vinschen DOT de>
<3a63eb8c-3e8e-cd2c-b9de-8c34fa041a75 AT cornell DOT edu>
<5b705ae7c9747a9cc25d2610cc6748e92bbe1d70 DOT camel AT dontech DOT dk>
<890dad21-dec5-cdd1-bf99-bdb45e759a71 AT cornell DOT edu>
<742331ee-4d9f-e86f-9314-c85b5f0cbfa8 AT SystematicSw DOT ab DOT ca>
MIME-Version: 1.0
In-Reply-To: <742331ee-4d9f-e86f-9314-c85b5f0cbfa8@SystematicSw.ab.ca>
X-Provags-ID: V03:K1:QVxUl5993H9cSix+RVPwYIlDP95LKCih/Wkp1oLrOGl5ssYEq38
sKw+lywTLiKjpFXHPR8lWw2+EyvtHK5GkBw26swMzv63gBNJAfkPbTPjap3iLt5sg1kIlY7
OcCcgHwXW2110y0DorWC3Rc7YBXWe4KQ+4VNaiV4ny29hGDmRZFOjgxeiAmFMY1qCSErcci
Bg4Cs1W3zxS1Yw6yWPl6A==
X-UI-Out-Filterresults: notjunk:1;V03:K0:u201yGhhJjQ=:f/91tdF6c7n80FCjHz184B
Sk1AAFZZizqdT9XB9Ji9YQMl7l0XNbw3wIlekZcvN1Ny2b994N44uJHVdxCp8y//Is1oCfzFS
RiIGGCDCyQPxHx8TZ2EgpJQac7xqEAOVMmi2fh8iiPfl3Dz5jXBmwrEfVM0AYv/81AoFQJLRU
43q2io9Vjrnk6B4lRs8oUTs4v/2dwdB+C04MPORQQ756I3xxuoAG5mtddenLV5wFpdEA+MXQC
CId8Ul7WmsgGmByNoqh4Bzaty8e03+rxkjzzMD3zs6juIwNV0CFvXpYYZVJWeFmIVkdy7iSGx
u5B7a+xEKrjL7PtMU+/7K9rrk8A471Ac1QnnIItAoOQVvAeaJ8bDKzyYpb/lhfdZa18E1EaoO
wZ3T4P8fvXIp6T4GmxTzVieUkojUfh1ZvQGoKHYA9vg+hNVdhT8J9swzAqNeVoLG0IHUgHhBw
MDRcvCPm8AJz+oqboL+Fn4j+N5jlFVBTrJVCRt66jHQ85ywRpd/kV6hhBE6XdttcWEccEkPzR
KT58GDtcf8TvdraTpm6C2iQ7bGhPvUw+ISFgCMVD85e53CAhzO94cbOW3RNticlFj7p9UBnH2
KqxQsPrEg1YHLyg6eIF8xvwJ7mWMpxzoEXWtC0k4reHiPEh+KXVynx/6ytMbWa46U2Fa+OSzf
wdWgYo72RL6LqX69u5T3SqIaNxQH70lD9xYDSzVayJyoiAKnH8H+mHlML1QFij/+Znbn176CQ
ktOauli900m8YE/JMhQscXlkGiyyG2cJy7OJGpHrWEh8zbxNkbcG8IdA5nE=
X-Spam-Status: No, score=-98.5 required=5.0 tests=BAYES_00, BODY_8BITS,
GOOD_FROM_CORINNA_CYGWIN, KAM_DMARC_NONE, KAM_DMARC_STATUS, RCVD_IN_DNSWL_NONE,
RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NEUTRAL,
TXREP 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-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=unsubscribe>
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: Corinna Vinschen via Cygwin <cygwin AT cygwin DOT com>
Reply-To: cygwin AT cygwin DOT com
Cc: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
Errors-To: cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com
Sender: "Cygwin" <cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com>
X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 1888JvhC001516

On Sep  6 21:34, Brian Inglis wrote:
> On 2021-09-06 15:24, Ken Brown via Cygwin wrote:
> > On 9/6/2021 4:54 PM, Peter Dons Tychsen wrote:
> > > Hi there,
> > > 
> > > On Mon, 2021-09-06 at 14:40 -0400, Ken Brown via Cygwin wrote:
> > > > > No, wait.  I get what you say.  The optimzation settings of the test
> > > > > case should have no influence on the code inside the DLL.  That
> > > > > doesn't
> > > > > make sense for sure.  However, I ran the testcase under GDB, I could
> > > > > reproduce the issue, and I could fix it by setting mmap_ext.Reserved
> > > > > = 0;
> > > > > Go figure!
> > > > 
> > > > I don't get it, but I can confirm that the problem is fixed.
> > > 
> > > That sounds a bit like a voodoo fix, that could quickly regress again.
> > > 
> > > Here is my 2 cents:
> > > 
> > > Currently the mmap_ext structure is setup like this:
> > > 
> > >   215       MEM_EXTENDED_PARAMETER mmap_ext = {
> > >   216         .Type = MemExtendedParameterAddressRequirements,
> > >   217         .Pointer = (PVOID) &mmap_req
> > >   218       };
> > > 
> > > This means that all other entries in the struct are zero at
> > > initialization as described here:
> > > https://en.cppreference.com/w/c/language/struct_initialization
> > > 
> > > So if you set "mmap_ext.Reserved = 0" again after that its a double
> > > failure.
> > 
> > You're looking at the wrong source code.  The bug didn't occur until the
> > code was changed to do the following:
> > 
> >        /* g++ 11.2 workaround: don't use initializer */
> >        MEM_EXTENDED_PARAMETER mmap_ext;
> >        mmap_ext.Type = MemExtendedParameterAddressRequirements;
> >        mmap_ext.Pointer = (PVOID) &mmap_req;
> > 
> > This left mmap_ext.Reserved uninitialized, which Corinna has now fixed.
> 
> With undocumented structure member initialization an issue, maybe better to
> future proof using e.g.
> 
> 	MEM_EXTENDED_PARAMETER mmap_ext = { 0 }; // or memset or bzero
> 	...

You're right.  The bits in Reserved are just that, reserved.  So MSFT
may decide to use some of the  bits for other purposes, should the need
arise.  I've fixed that in git master.


Thanks,
Corinna

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