Mercurial > hg > truffle
comparison agent/src/share/classes/sun/jvm/hotspot/memory/FreeList.java @ 7950:6cf2530f7fd3
8005278: Serviceability Agent: jmap -heap and jstack -m fail
Summary: BinaryTreeDictionary is typedef'ed as AFLBinaryTreeDictionary in vmStructs and in SA we still use old name for that. FreeList now is a template based class which is not reflect in SA type library. When SA does calculation of heap for CMS, the former will cause failure to retrieve BinaryTreeDictionary sine the rename. The later will fail wherever it is used in SA.
Reviewed-by: dholmes, sla, coleenp
Contributed-by: yunda.mly@taobao.com
author | minqi |
---|---|
date | Thu, 24 Jan 2013 23:30:45 -0800 |
parents | c18cbe5936b8 |
children |
comparison
equal
deleted
inserted
replaced
7949:5daaddd917a1 | 7950:6cf2530f7fd3 |
---|---|
1 /* | 1 /* |
2 * @(#)FreeList.java | 2 * @(#)FreeList.java |
3 * | 3 * |
4 * Copyright (c) 2000, 2008, Oracle and/or its affiliates. All rights reserved. | 4 * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. |
5 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 5 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
6 * | 6 * |
7 * This code is free software; you can redistribute it and/or modify it | 7 * This code is free software; you can redistribute it and/or modify it |
8 * under the terms of the GNU General Public License version 2 only, as | 8 * under the terms of the GNU General Public License version 2 only, as |
9 * published by the Free Software Foundation. | 9 * published by the Free Software Foundation. |
39 } | 39 } |
40 }); | 40 }); |
41 } | 41 } |
42 | 42 |
43 private static synchronized void initialize(TypeDataBase db) { | 43 private static synchronized void initialize(TypeDataBase db) { |
44 Type type = db.lookupType("FreeList"); | 44 Type type = db.lookupType("FreeList<FreeChunk>"); |
45 sizeField = type.getCIntegerField("_size"); | 45 sizeField = type.getCIntegerField("_size"); |
46 countField = type.getCIntegerField("_count"); | 46 countField = type.getCIntegerField("_count"); |
47 headerSize = type.getSize(); | 47 headerSize = type.getSize(); |
48 } | 48 } |
49 | 49 |