gencgc: Defer moving pinned pages to newspace as late as possible.
authorAlastair Bridgewater <alastair.bridgewater@gmail.com>
Sun, 12 May 2013 14:49:55 +0000 (10:49 -0400)
committerAlastair Bridgewater <nyef@kana.lisphacker.com>
Mon, 20 May 2013 19:51:20 +0000 (15:51 -0400)
commit8c2a7241975ae5defff823601379c805acf262b6
tree7cf33eed6328ae50f420fc00f4ce7193fe4ef299
parent379e3d3ee80c6b9dd9c59f8f76baa6d47c8c5b71
gencgc: Defer moving pinned pages to newspace as late as possible.

  * Rather than moving pinned pages to newspace immediately, defer
moving them until just before we start to scavenge (evacuate) all
of the oldpsace pages.

  * This, in theory, makes it easier to move pages to newspace if
they are mostly-live, rather than having to allocate new pages for
the data (increasing peak address-space use during GC), assuming
that we know that some page meets such criteria.

  * While we're here, commentary updates also replace an "XX I'd
rather not do this but the GC logic can't cope with not doing it"
with an actual explanation of WHY it needs to be done.  In fact,
commentary updates explain it twice, in two different locations.
src/runtime/gencgc.c