Reviewers: Michael Starzinger,
Description:
Fix Heap::Shrink to ensure that it does not free pages that are still in
use.
Heap::Shrink is called from EnsureFromSpaceIsCommitted at the very start of
the
GC. At this moment live bytes counts on pages are in inconsistent states.
Some
pages might have been already swept but have not been yet reached by an
incremental marker (or incremental marker is not in progress) and have live
bytes count set to 0. Thus we can't rely only on LiveBytes to determine
which
pages can be released to the OS.
[email protected]
BUG=100414
Please review this at http://codereview.chromium.org/8507038/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/heap.cc
M src/spaces.h
M src/spaces.cc
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev