Wed, 09 Jul 2008 15:08:55 -0700
6672698: mangle_unused_area() should not remangle the entire heap at each collection.
Summary: Maintain a high water mark for the allocations in a space and mangle only up to that high water mark.
Reviewed-by: ysr, apetrusenko
duke@435 | 1 | // |
duke@435 | 2 | // Copyright (c) 2007 Sun Microsystems, Inc. All Rights Reserved. |
duke@435 | 3 | // DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
duke@435 | 4 | // |
duke@435 | 5 | // This code is free software; you can redistribute it and/or modify it |
duke@435 | 6 | // under the terms of the GNU General Public License version 2 only, as |
duke@435 | 7 | // published by the Free Software Foundation. |
duke@435 | 8 | // |
duke@435 | 9 | // This code is distributed in the hope that it will be useful, but WITHOUT |
duke@435 | 10 | // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
duke@435 | 11 | // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
duke@435 | 12 | // version 2 for more details (a copy is included in the LICENSE file that |
duke@435 | 13 | // accompanied this code). |
duke@435 | 14 | // |
duke@435 | 15 | // You should have received a copy of the GNU General Public License version |
duke@435 | 16 | // 2 along with this work; if not, write to the Free Software Foundation, |
duke@435 | 17 | // Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
duke@435 | 18 | // |
duke@435 | 19 | // Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, |
duke@435 | 20 | // CA 95054 USA or visit www.sun.com if you need additional information or |
duke@435 | 21 | // have any questions. |
coleenp@548 | 22 | // |
duke@435 | 23 | // |
duke@435 | 24 | |
jmasa@698 | 25 | asParNewGeneration.hpp adaptiveSizePolicy.hpp |
jmasa@698 | 26 | asParNewGeneration.hpp parNewGeneration.hpp |
duke@435 | 27 | |
jmasa@698 | 28 | asParNewGeneration.cpp asParNewGeneration.hpp |
jmasa@698 | 29 | asParNewGeneration.cpp cmsAdaptiveSizePolicy.hpp |
duke@435 | 30 | asParNewGeneration.cpp cmsGCAdaptivePolicyCounters.hpp |
jmasa@698 | 31 | asParNewGeneration.cpp defNewGeneration.inline.hpp |
jmasa@698 | 32 | asParNewGeneration.cpp oop.pcgc.inline.hpp |
jmasa@698 | 33 | asParNewGeneration.cpp parNewGeneration.hpp |
duke@435 | 34 | asParNewGeneration.cpp referencePolicy.hpp |
jmasa@698 | 35 | asParNewGeneration.cpp spaceDecorator.hpp |
duke@435 | 36 | |
duke@435 | 37 | parCardTableModRefBS.cpp allocation.inline.hpp |
duke@435 | 38 | parCardTableModRefBS.cpp cardTableModRefBS.hpp |
duke@435 | 39 | parCardTableModRefBS.cpp cardTableRS.hpp |
duke@435 | 40 | parCardTableModRefBS.cpp java.hpp |
duke@435 | 41 | parCardTableModRefBS.cpp mutexLocker.hpp |
duke@435 | 42 | parCardTableModRefBS.cpp sharedHeap.hpp |
duke@435 | 43 | parCardTableModRefBS.cpp space.hpp |
duke@435 | 44 | parCardTableModRefBS.cpp universe.hpp |
duke@435 | 45 | parCardTableModRefBS.cpp virtualspace.hpp |
duke@435 | 46 | |
duke@435 | 47 | parGCAllocBuffer.cpp arrayOop.hpp |
duke@435 | 48 | parGCAllocBuffer.cpp oop.inline.hpp |
duke@435 | 49 | parGCAllocBuffer.cpp parGCAllocBuffer.hpp |
duke@435 | 50 | parGCAllocBuffer.cpp sharedHeap.hpp |
duke@435 | 51 | |
duke@435 | 52 | parGCAllocBuffer.hpp allocation.hpp |
duke@435 | 53 | parGCAllocBuffer.hpp globalDefinitions.hpp |
duke@435 | 54 | parGCAllocBuffer.hpp threadLocalAllocBuffer.hpp |
duke@435 | 55 | |
duke@435 | 56 | parNewGeneration.cpp adaptiveSizePolicy.hpp |
duke@435 | 57 | parNewGeneration.cpp ageTable.hpp |
duke@435 | 58 | parNewGeneration.cpp concurrentMarkSweepGeneration.hpp |
duke@435 | 59 | parNewGeneration.cpp copy.hpp |
duke@435 | 60 | parNewGeneration.cpp defNewGeneration.inline.hpp |
duke@435 | 61 | parNewGeneration.cpp genCollectedHeap.hpp |
duke@435 | 62 | parNewGeneration.cpp genOopClosures.inline.hpp |
duke@435 | 63 | parNewGeneration.cpp generation.hpp |
duke@435 | 64 | parNewGeneration.cpp generation.inline.hpp |
duke@435 | 65 | parNewGeneration.cpp globalDefinitions.hpp |
duke@435 | 66 | parNewGeneration.cpp handles.hpp |
duke@435 | 67 | parNewGeneration.cpp handles.inline.hpp |
duke@435 | 68 | parNewGeneration.cpp java.hpp |
duke@435 | 69 | parNewGeneration.cpp objArrayOop.hpp |
coleenp@548 | 70 | parNewGeneration.cpp oop.inline.hpp |
duke@435 | 71 | parNewGeneration.cpp oop.pcgc.inline.hpp |
duke@435 | 72 | parNewGeneration.cpp parGCAllocBuffer.hpp |
duke@435 | 73 | parNewGeneration.cpp parNewGeneration.hpp |
duke@435 | 74 | parNewGeneration.cpp parOopClosures.inline.hpp |
duke@435 | 75 | parNewGeneration.cpp referencePolicy.hpp |
duke@435 | 76 | parNewGeneration.cpp resourceArea.hpp |
duke@435 | 77 | parNewGeneration.cpp sharedHeap.hpp |
duke@435 | 78 | parNewGeneration.cpp space.hpp |
jmasa@698 | 79 | parNewGeneration.cpp spaceDecorator.hpp |
duke@435 | 80 | parNewGeneration.cpp workgroup.hpp |
duke@435 | 81 | |
duke@435 | 82 | parNewGeneration.hpp defNewGeneration.hpp |
duke@435 | 83 | parNewGeneration.hpp parGCAllocBuffer.hpp |
duke@435 | 84 | parNewGeneration.hpp taskqueue.hpp |
coleenp@548 | 85 | |
coleenp@548 | 86 | parOopClosures.hpp genOopClosures.hpp |
coleenp@548 | 87 | |
coleenp@548 | 88 | parOopClosures.inline.hpp parNewGeneration.hpp |
coleenp@548 | 89 | parOopClosures.inline.hpp parOopClosures.hpp |