From: Takashi Yano <takashi.yano@nifty.ne.jp>
To: cygwin@cygwin.com
Subject: Re: Cygwin 3.4.3 and 3.5.0... hangs in make, top, procps, ls /proc/PID/...
Date: Wed, 18 Jan 2023 18:16:48 +0900 [thread overview]
Message-ID: <20230118181648.362c4665be80637108e4fd36@nifty.ne.jp> (raw)
In-Reply-To: <Y8cJHDaXbQ2ZQSzn@calimero.vinschen.de>
On Tue, 17 Jan 2023 21:46:20 +0100
Corinna Vinschen wrote:
> Hi Takashi,
>
> On Jan 16 22:42, Corinna Vinschen via Cygwin wrote:
> > On Jan 16 16:18, Corinna Vinschen via Cygwin wrote:
> > > Actually, I' running your testcase on two machines in parallel now for
> > > quite some time, which only one hunk of 60675f1a7eb2 reverted, i.e.
> > >
> > > diff --git a/winsup/cygwin/mm/shared.cc b/winsup/cygwin/mm/shared.cc
> > > index 893b20d289b4..6d6d2940b6d4 100644
> > > --- a/winsup/cygwin/mm/shared.cc
> > > +++ b/winsup/cygwin/mm/shared.cc
> > > @@ -140,7 +140,11 @@ open_shared (const WCHAR *name, int n, HANDLE& shared_h, DWORD size,
> > > if (*m == SH_JUSTCREATE || *m == SH_JUSTOPEN)
> > > addr = NULL;
> > > else
> > > - addr = (void *) region_address[*m];
> > > + {
> > > + addr = (void *) region_address[*m];
> > > + VirtualFree (addr, 0, MEM_RELEASE);
> > > + }
> > > +
> > >
> > > WCHAR map_buf[MAX_PATH];
> > > WCHAR *mapname = NULL;
> > >
> > > So far (and knocking on wood madly while writing this) the mapping
> > > problem didn't show up once. Maybe you'd like to try the same?
> >
> > Never mind, I encountered another error. After a bit more debugging
> > I think I understand the problem now, and I'm just in the process of
> > reworking open_shared. This may take a day or two. Stay tuned.
>
> I pushed some patches to fix this issue. Excessive debugging indicated
> that the reason cygcheck fails in this way is:
>
> - It's a non-Cygwin process which
>
> - is built with high-entropy ASLR and
>
> - tries to load the Cygwin DLL dynamically and
>
> - therefore suffers from the fact that recent Cygwin code doesn't
> expect that certain memory regions are used by Windows itself.
> Which they are, due to the high-entropy stuff.
>
> The patches are supposed to make the code less rigid in terms of the
> addresses of certain memory regions, as well as dropping the
> high-entropy VA flag from builds of strace and cygcheck, both of which
> are loading the Cygwin DLL dynamically as part of their job.
>
> The test release 3.5.0-0.116.g8d318bf142f7 contains the patches, for
> everybody to try.
Thank you very much for working on this problem. It seems that
it was unexpectedly large-scale modification.
I confirmed that the problem has been fixed with these patches.
The test case has been running for 11 hours but the problem does
not happen so far.
--
Takashi Yano <takashi.yano@nifty.ne.jp>
next prev parent reply other threads:[~2023-01-18 9:17 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-30 4:59 Brian Inglis
2023-01-02 2:32 ` Takashi Yano
2023-01-02 5:38 ` Takashi Yano
2023-01-02 8:21 ` Takashi Yano
2023-01-09 13:20 ` Corinna Vinschen
2023-01-16 9:02 ` Takashi Yano
2023-01-16 10:23 ` Corinna Vinschen
2023-01-16 14:45 ` Takashi Yano
2023-01-16 15:18 ` Corinna Vinschen
2023-01-16 19:23 ` Brian Inglis
2023-01-16 21:42 ` Corinna Vinschen
2023-01-17 20:46 ` Corinna Vinschen
2023-01-18 9:16 ` Takashi Yano [this message]
2023-01-18 9:42 ` Corinna Vinschen
2023-01-19 16:31 ` Brian Inglis
2023-01-19 17:12 ` Brian Inglis
2023-01-19 18:38 ` Corinna Vinschen
2023-01-19 18:42 ` Jose Isaias Cabrera
2023-01-19 19:31 ` Brian Inglis
2023-03-21 19:17 ` Brian Inglis
2023-03-22 19:05 ` Brian Inglis
2023-01-02 23:03 ` Takashi Yano
2023-01-09 16:02 ` Corinna Vinschen
2023-01-09 17:13 ` Corinna Vinschen
2023-01-10 10:01 ` Takashi Yano
2023-01-10 10:57 ` Corinna Vinschen
2023-01-09 13:36 ` Corinna Vinschen
2023-01-10 0:00 ` Brian Inglis
2023-01-16 15:40 ` Jon Turney
2023-01-16 18:54 ` Brian Inglis
2022-12-31 20:01 Brian Inglis
2023-01-01 18:51 ` Jeremy Drake
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230118181648.362c4665be80637108e4fd36@nifty.ne.jp \
--to=takashi.yano@nifty.ne.jp \
--cc=cygwin@cygwin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).