Hi!

Andy Wingo <[EMAIL PROTECTED]> writes:

> I'm not happy about one thing though, a GC leak that I found and had to
> paper over. You'll see it if you look at gitk origin/vm.
>
> Current plan is to either look at that GC leak, if I'm feeling
> adventurous, or otherwise keep plugging away at the test suite. Most
> things pass but I do find some random bugs (46d2d6f80 took me a long
> time to figure out).

I see this change (in 877ffa3f9c8b1d58aedff2821ee1811c6f3c3622):

@@ -331,7 +331,7 @@ vm_mark (SCM obj)
 
   /* mark the stack conservatively */
   scm_mark_locations ((SCM_STACKITEM *) vp->stack_base,
-                      vp->sp - vp->stack_base + 1);
+                      sizeof (SCM)*(vp->sp + 1 - vp->stack_base));

Assuming the `sp' and `stack_base' fields are `SCM_STACKITEM *', this
change yields over-marking, which might explain why it fixes a problem
with missed references (as noted in the log) as a side effect.

BTW, I'm not sure what you mean by "GC leak" (missed references or
really ever-growing heap?) and by "plugging away at the test suite".

Thanks for the update and for the code!

Ludo'.



Reply via email to