comparison src/share/vm/runtime/vmStructs.cpp @ 14470:f6490a5f084a

8033440: jmap reports unexpected used/free size of concurrent mark-sweep generation Summary: SA used the wrong type for the indexedFreeList in CompactibleFreeListSpace. Reviewed-by: coleenp, dsamersoff
author sjohanss
date Mon, 17 Feb 2014 09:51:37 +0100
parents aa8fab3bed11
children 1cc1d4ffcb84
comparison
equal deleted inserted replaced
14469:7ab49a697539 14470:f6490a5f084a
1 /* 1 /*
2 * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
240 typedef Hashtable<oop, mtSymbol> StringHashtable; 240 typedef Hashtable<oop, mtSymbol> StringHashtable;
241 typedef TwoOopHashtable<Klass*, mtClass> KlassTwoOopHashtable; 241 typedef TwoOopHashtable<Klass*, mtClass> KlassTwoOopHashtable;
242 typedef Hashtable<Klass*, mtClass> KlassHashtable; 242 typedef Hashtable<Klass*, mtClass> KlassHashtable;
243 typedef HashtableEntry<Klass*, mtClass> KlassHashtableEntry; 243 typedef HashtableEntry<Klass*, mtClass> KlassHashtableEntry;
244 typedef TwoOopHashtable<Symbol*, mtClass> SymbolTwoOopHashtable; 244 typedef TwoOopHashtable<Symbol*, mtClass> SymbolTwoOopHashtable;
245 typedef BinaryTreeDictionary<Metablock, FreeList<Metablock> > MetablockTreeDictionary;
246 245
247 //-------------------------------------------------------------------------------- 246 //--------------------------------------------------------------------------------
248 // VM_STRUCTS 247 // VM_STRUCTS
249 // 248 //
250 // This list enumerates all of the fields the serviceability agent 249 // This list enumerates all of the fields the serviceability agent
1279 nonstatic_field(elapsedTimer, _active, bool) \ 1278 nonstatic_field(elapsedTimer, _active, bool) \
1280 nonstatic_field(InvocationCounter, _counter, unsigned int) \ 1279 nonstatic_field(InvocationCounter, _counter, unsigned int) \
1281 volatile_nonstatic_field(FreeChunk, _size, size_t) \ 1280 volatile_nonstatic_field(FreeChunk, _size, size_t) \
1282 nonstatic_field(FreeChunk, _next, FreeChunk*) \ 1281 nonstatic_field(FreeChunk, _next, FreeChunk*) \
1283 nonstatic_field(FreeChunk, _prev, FreeChunk*) \ 1282 nonstatic_field(FreeChunk, _prev, FreeChunk*) \
1284 nonstatic_field(FreeList<FreeChunk>, _size, size_t) \ 1283 nonstatic_field(AdaptiveFreeList<FreeChunk>, _size, size_t) \
1285 nonstatic_field(FreeList<Metablock>, _size, size_t) \ 1284 nonstatic_field(AdaptiveFreeList<FreeChunk>, _count, ssize_t)
1286 nonstatic_field(FreeList<FreeChunk>, _count, ssize_t) \
1287 nonstatic_field(FreeList<Metablock>, _count, ssize_t) \
1288 nonstatic_field(MetablockTreeDictionary, _total_size, size_t)
1289 1285
1290 1286
1291 //-------------------------------------------------------------------------------- 1287 //--------------------------------------------------------------------------------
1292 // VM_TYPES 1288 // VM_TYPES
1293 // 1289 //
2153 \ 2149 \
2154 declare_toplevel_type(PtrQueue) \ 2150 declare_toplevel_type(PtrQueue) \
2155 \ 2151 \
2156 /* freelist */ \ 2152 /* freelist */ \
2157 declare_toplevel_type(FreeChunk*) \ 2153 declare_toplevel_type(FreeChunk*) \
2158 declare_toplevel_type(Metablock*) \ 2154 declare_toplevel_type(AdaptiveFreeList<FreeChunk>*) \
2159 declare_toplevel_type(FreeBlockDictionary<FreeChunk>*) \ 2155 declare_toplevel_type(AdaptiveFreeList<FreeChunk>)
2160 declare_toplevel_type(FreeList<FreeChunk>*) \
2161 declare_toplevel_type(FreeList<FreeChunk>) \
2162 declare_toplevel_type(FreeBlockDictionary<Metablock>*) \
2163 declare_toplevel_type(FreeList<Metablock>*) \
2164 declare_toplevel_type(FreeList<Metablock>) \
2165 declare_type(MetablockTreeDictionary, FreeBlockDictionary<Metablock>)
2166 2156
2167 2157
2168 //-------------------------------------------------------------------------------- 2158 //--------------------------------------------------------------------------------
2169 // VM_INT_CONSTANTS 2159 // VM_INT_CONSTANTS
2170 // 2160 //