In hotspot/src/share/vm/memory/universe.cpp, version
changeset: 7541:4d5b47a5184d
user: roland
date: Tue Nov 25 17:33:59 2014 +0100
We have some left-over comments from the PermGen days:
if (!DumpSharedSpaces) {
// These are the only Java fields that are currently set during shared space dumping.
// We prefer to not handle this generally, so we always reinitialize these detail messages.
...
msg = java_lang_String::create_from_str("Compressed class space", CHECK_false);
java_lang_Throwable::set_message(Universe::_out_of_memory_error_class_metaspace, msg());
However, out_of_memory_error_class_metaspace is NEVER set during shared space dumping (and as far as I can tell, never used ???)
We need to do two things:
[1] Check all the fields affected by this "if" block and see if any one of them MAY be used during DumpSharedSpaces. If so, do we need to actually allocate some of these these fields during DumpSharedSpaces.
[2] Correct the comment.
changeset: 7541:4d5b47a5184d
user: roland
date: Tue Nov 25 17:33:59 2014 +0100
We have some left-over comments from the PermGen days:
if (!DumpSharedSpaces) {
// These are the only Java fields that are currently set during shared space dumping.
// We prefer to not handle this generally, so we always reinitialize these detail messages.
...
msg = java_lang_String::create_from_str("Compressed class space", CHECK_false);
java_lang_Throwable::set_message(Universe::_out_of_memory_error_class_metaspace, msg());
However, out_of_memory_error_class_metaspace is NEVER set during shared space dumping (and as far as I can tell, never used ???)
We need to do two things:
[1] Check all the fields affected by this "if" block and see if any one of them MAY be used during DumpSharedSpaces. If so, do we need to actually allocate some of these these fields during DumpSharedSpaces.
[2] Correct the comment.