Subject: bug#79346: igc: PolicyShouldCollectWorld

From: Eli Zaretskii <[email-masked]>
Date: Sun, 31 Aug 2025 12:30:43 +0300

> From: Helmut Eller <[email-masked]>
> Date: Sun, 31 Aug 2025 11:21:41 +0200
> 
> On Sun, Aug 31 2025, Eli Zaretskii wrote:
> 
> >> It looks like the bug is in ArenaStep: it should divide the by
> >> clocks_per_second before calling PolicyShouldCollectWorld.
> >
> > What does this affect in Emacs?
> 
> This affects how often MPS begins opportunistic GC, i.e. it affects only
> sessions where igc-step-interval > 0.
> 
> Because of the bug, full collections are started more frequently because
> availableTime > collectionTime is true more often. (availableTime is
> 10^6 times bigger than it should be.)
> 
> The documentation of PolicyShouldCollectWorld says that it starts a full
> collection only if it expects that the full collection can be completed
> within availableTime (= igc-step-interval) and if enough time (= per
> process time) has passed since the last full collection.
> 
> > And is this relevant to using a non-debug build of the library?
> 
> Yes.

OK, thanks.  I guess it will be interesting to see what happens if
people use a patched MPS with this bug fixed.