guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Mark procedures


From: Ludovic Courtès
Subject: Re: Mark procedures
Date: Mon, 20 Jun 2016 14:15:41 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Andy Wingo <address@hidden> skribis:

> Picking up an old thread....
>
> On Thu 05 Nov 2015 14:11, Andy Wingo <address@hidden> writes:
>
>>  (1) A bug related to SMOB finalization and marking that affects
>>      LilyPond
>>
>> For (1) it seems to me that we just have a bug.  A SMOB mark function
>> was called on an object after the finalizer.  ****Note**** that having
>> the finalizer called doesn't mean that the GC object was collected -- it
>> just means it was collectable, perhaps in a clique of objects.
>> Finalization being asynchronous with marking it's possible that a clique
>> of objects was only half-finalized when a new mark procedure runs.  The
>> mark procedure saw an object on which free() was already called -- this
>> is possible.
>>
>> We should fix Guile so to "null out" the SMOB typecode when the SMOB
>> finalizer is called.  If our mark procedure sees a SMOB that has already
>> been finalized, it just returns.
>
> AFAIU the Lilypond / Guile 2.0 bug is still there.  Has anyone tried
> this strategy to fix it?

I haven’t.  :-/

Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]