mc-alloc bug?

Marcus Crestani crestani at informatik.uni-tuebingen.de
Thu Sep 13 04:16:44 EDT 2007


>>>>>"JJ" == Jerry James <loganjerry at gmail.com> writes:
JJ> I've built a 21.5 from CVS of just before the cvs.xemacs.org crash, on
JJ> a 32-bit Pentium 4.  I ran it under valgrind and got some errors
JJ> before the frame is mapped.

This very much looks like valgrind complains about the memory
protection caused by the incremental garbage collector.

Did you start valgrind with the option
`--vex-iropt-precise-memory-exns=yes' to enable the magic that allows
valgrind to work with the write barrier's signal handlers?

JJ> Here's the part I'm not so sure about.  None of the remaining code
JJ> checks that a sufficient number of bytes remain on that page.  Or
JJ> do we always allocate an entire page?

The call to allocate_cell either returns the pointer to a free cell of
sufficient size or returns 0.  In the latter case, the allocator
allocates a new page and sets it up for the correspoding size class.
In both cases, we always get a sufficient number of bytes.

-- 
Marcus



More information about the XEmacs-Beta mailing list