unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Gerd Möllmann" <gerd.moellmann@gmail.com>
To: Ken Brown <kbrown@cornell.edu>
Cc: 74805@debbugs.gnu.org, Eli Zaretskii <eliz@gnu.org>,
	Pip Cet <pipcet@protonmail.com>,
	rb@ravenbrook.com
Subject: bug#74805: 30.0.92; Trying to build scratch/igc on Cygwin
Date: Sat, 21 Dec 2024 18:21:53 +0100	[thread overview]
Message-ID: <m2ed21j6j2.fsf@gmail.com> (raw)
In-Reply-To: <f23f27ad-febe-49cb-a277-ed5e4836a6ea@cornell.edu> (Ken Brown's message of "Sat, 21 Dec 2024 11:56:30 -0500")

Ken Brown <kbrown@cornell.edu> writes:

> On 12/21/2024 2:24 AM, Eli Zaretskii wrote:
>>> Date: Fri, 20 Dec 2024 18:48:37 -0500
>>> Cc: 74805@debbugs.gnu.org, Richard Brooksby <rb@ravenbrook.com>
>>> From: Ken Brown <kbrown@cornell.edu>
>>> 3. The "mmap" branch is a straightforward port, mostly imitating the
>>> FreeBSD port.  It currently (with Cygwin 3.5.5) fails because of a
>>> limitation of Cygwin's mmap.  But I have a simple patch to Cygwin in the
>>> works that removes that limitation.  With that patch, 37 of the 38 MPS
>>> tests pass.  I still need to debug the failing test.  I'm cautiously
>>> optimistic that I can get this approach to work.  Either way, I expect
>>> the Cygwin patch to soon be available in a test release of Cygwin 3.6.0
>>> so that other Cygwin users can try it.
>> Thanks for the update, I think this is very good news.
>
> I could use some help from the MPS experts in debugging the failing
> test, which is arenacv.  I ran the test under strace and didn't see
> any mmap or munmap failures.  I'm attaching the test log, which
> doesn't mean a thing to me.  I also built an unoptimized arenacv and
> can run it under gdb if someone tells me what to look for.
>
> TIA.
>
> Ken

Hi Ken.

I'm not an MPS internals expert, but AFAICT, this likely comes from here
in arenacv.c, but without being able to debug this, I find it hard to
tell what's going on in the allocator->alloc.

static void testAllocAndIterate(Arena arena, Pool pool,
                                Size pageSize, Count numPerPage,
                                AllocatorClass allocator)
{
  AllocInfoStruct offsetRegion, gapRegion, newRegion, topRegion;
  LocusPrefStruct pref;
  Count offset, gap, new;
  ZoneSet zone = (ZoneSet)2;
  int i;

  LocusPrefInit(&pref);

  /* Testing the behaviour with various sizes of gaps in the page table. */

  /* Assume the allocation strategy is first-fit.  The idea of the tests is */
  /* to allocate a region of memory, then deallocate a gap in the middle, */
  /* then allocate a new region that fits in the gap with various amounts */
  /* left over.  Like this: */
  /* |-offsetRegion-||----gapRegion----||-topRegion-| */
  /* |-offsetRegion-||-newRegion-|      |-topRegion-| */
  /* This is done with three different sizes of offsetRegion, in two */
  /* different zones to ensure that all page boundary cases are tested. */
  for(i = 0; i < 2; ++i) { /* zone loop */
    for(offset = 0; offset <= 2*numPerPage; offset += numPerPage) {
      if(offset != 0)
        die(allocator->alloc(&offsetRegion, &pref, offset * pageSize, pool),
            "offsetRegion");
      for(gap = numPerPage+1; gap <= 3 * (numPerPage+1);
          gap += (numPerPage+1)) {
        die(allocator->alloc(&gapRegion, &pref, gap * pageSize, pool),
            ^^^^^^^^^^^^^^^^
            "gapRegion");





  reply	other threads:[~2024-12-21 17:21 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-11 22:50 bug#74805: 30.0.92; Trying to build scratch/igc on Cygwin Ken Brown
2024-12-11 23:47 ` Pip Cet via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-12-12 18:14   ` Ken Brown
2024-12-11 23:57 ` Andrea Corallo
2024-12-12  6:09 ` Eli Zaretskii
2024-12-12 18:12   ` Ken Brown
2024-12-12 19:25     ` Eli Zaretskii
2024-12-12 23:17       ` Stefan Kangas
2024-12-13  7:51         ` Eli Zaretskii
2024-12-20 23:48   ` Ken Brown
2024-12-21  7:24     ` Eli Zaretskii
2024-12-21 16:56       ` Ken Brown
2024-12-21 17:21         ` Gerd Möllmann [this message]
2024-12-21 17:34           ` Pip Cet via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-12-21 20:25             ` Ken Brown
2024-12-22  8:24         ` Richard Brooksby
2024-12-22  8:32           ` Richard Brooksby
2024-12-12 11:05 ` Stefan Kangas
2024-12-12 11:30   ` Eli Zaretskii
2024-12-12 12:06     ` Gerd Möllmann
2024-12-12 14:38       ` Eli Zaretskii
2024-12-12 15:01         ` Gerd Möllmann

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

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m2ed21j6j2.fsf@gmail.com \
    --to=gerd.moellmann@gmail.com \
    --cc=74805@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=kbrown@cornell.edu \
    --cc=pipcet@protonmail.com \
    --cc=rb@ravenbrook.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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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