guile-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] Fixing `gc-live-object-stats'


From: Han-Wen Nienhuys
Subject: Re: [PATCH] Fixing `gc-live-object-stats'
Date: Thu, 17 Nov 2005 15:12:14 +0100
User-agent: Mozilla Thunderbird 1.0.7-1.1.fc4 (X11/20050929)

Ludovic Courtès wrote:
BTW, looking at the code of `scm_i_sweep_some_cards ()', it looks like
cards can be initialized more than once in the event where THRESHOLD is
reached before NEXT_FREE reached the upper boundary of SEG.  In such a
case, SEG->FIRST_TIME will remain equal to 1, and thus, the next time
this function is called on SEG, `scm_i_init_card_freelist ()' will be
called again for each of SEG's cards.

Did I miss something?

Yes. Sweeping always starts with NEXT_FREE, which is incremented for each call, so each card from the segment is only passed over once with FIRST_TIME. FIRST_TIME refers to the fact that no GC has taken place for the segment at hand.

--
 Han-Wen Nienhuys - address@hidden - http://www.xs4all.nl/~hanwen





reply via email to

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