[Gc] New GC Scheduler
Neal H. Walfield
neal at walfield.org
Thu Jun 19 04:09:04 PDT 2008
At Thu, 19 Jun 2008 00:28:16 +0200,
Neal H. Walfield wrote:
> After some number of collections, a collection that seems perfectly
> normal, will result in the triggering GC_NEW returning NULL. I'm
> still investing this but would like some feedback:
After some more investigation, it seems that it is not GC_malloc that
is failing but something else (quite possibly my run time). Running
gctest, I also see failures, usually complains that:
List reversal produced incorrect list - collector is broken
Other times, it simply terminates due to a NULL pointer dereference.
Occasionally, the test passes. This happens either with or without my
scheduler enabled. USE_MMAP and USE_MUNMAP are defined.
When I disable USE_MUNMAP, the test runs to completion successfully.
I've observed that no other configuration currently uses USE_MUNMAP.
When enabling USE_MUNMAP and USE_MMAP on GNU/Linux running on an x86
processor, the test passes. When I enable my scheduler (by fixing the
available parameter), however, it fails:
Completed 1 tests
Finalized 2206/2206 objects - finalization is probably ok
Total number of bytes allocated is 60591488
Final heap size is 44679168 bytes
Unexpected heap growth - collector may be broken
This is clearly different from my error and thus I suspect it is
Any advice would be appreciated.
By the way, I am using gc 7.0.
More information about the Gc