Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8178871

instrumentation.retransformClasses causes memory leak

XMLWordPrintable

    • generic

      FULL PRODUCT VERSION :
      build 1.8.0 -b132

      ADDITIONAL OS VERSION INFORMATION :
      Red Hat Enterprise Linux Server release 7.1
      Linux 3.10.0-229.el7.x86_64 #1 SMP Thu Jan 29 18:37:38 EST 2015 X86_64 X86_64 GNU/Linux

      EXTRA RELEVANT SYSTEM CONFIGURATION :
      -Xmx1g -Xms1g -XX:MaxPermSize=512m

      A DESCRIPTION OF THE PROBLEM :
      when invoking instrumentation.retransformClasses in a function repeatedly for a few hours.
      The RES memory of the jvm process increases continuously.

      When analyzing the native memory consumption of the jvm with gperftools.
      The data indicates the most memory allocated without being released is class transformation related.

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      1. Implement a javaagent program
      2.invoking instrumentation.retransformClasses to reransform a large number of classes in a function repeatedly for a few hours.
      3. Check the RES memory of the jvm process

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      The RES memory is not increased greatly
      ACTUAL -
      The RES memory is increased greatly

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      Check the fouth column output of pprof in gpertools
      Total: 308.7 MB
         303.4 98.3% 98.3% 303.4 98.3% os::malloc
           3.8 1.2% 99.5% 3.8 1.2% init
           1.1 0.3% 99.8% 1.1 0.3% inflate_blocks_new
           0.4 0.1% 99.9% 0.4 0.1% readCEN
           0.1 0.0% 100.0% 0.1 0.0% ObjectSynchronizer::omAlloc
           0.0 0.0% 100.0% 0.0 0.0% _dl_new_object
           0.0 0.0% 100.0% 0.0 0.0% _dl_allocate_tls
           0.0 0.0% 100.0% 0.0 0.0% CollectedHeap::CollectedHeap
           0.0 0.0% 100.0% 0.0 0.0% Events::init
           0.0 0.0% 100.0% 0.4 0.1% ZIP_Put_In_Cache
           0.0 0.0% 100.0% 0.0 0.0% _nl_intern_locale_data
           0.0 0.0% 100.0% 0.0 0.0% strdup
           0.0 0.0% 100.0% 0.0 0.0% _dl_check_map_versions
           0.0 0.0% 100.0% 0.0 0.0% compileBroker_init
           0.0 0.0% 100.0% 1.1 0.3% Java_java_util_zip_Inflater_init
           0.0 0.0% 100.0% 0.0 0.0% newEntry
           0.0 0.0% 100.0% 0.2 0.1% Thread::Thread
           0.0 0.0% 100.0% 0.0 0.0% __new_exitfn
           0.0 0.0% 100.0% 0.0 0.0% nss_parse_service_list
           0.0 0.0% 100.0% 0.0 0.0% getpwuid
           0.0 0.0% 100.0% 0.0 0.0% __fopen_internal
           0.0 0.0% 100.0% 0.0 0.0% _dl_map_object_deps
           0.0 0.0% 100.0% 0.0 0.0% JLI_MemAlloc
           0.0 0.0% 100.0% 0.0 0.0% _dl_scope_free
           0.0 0.0% 100.0% 1.1 0.3% inflateInit2_
           0.0 0.0% 100.0% 0.0 0.0% __nss_database_lookup
           0.0 0.0% 100.0% 0.0 0.0% initLoopbackRoutes
           0.0 0.0% 100.0% 0.0 0.0% __add_to_environ
           0.0 0.0% 100.0% 0.0 0.0% dl_open_worker
           0.0 0.0% 100.0% 0.0 0.0% expand_dynamic_string_token
           0.0 0.0% 100.0% 0.0 0.0% __tzfile_read
           0.0 0.0% 100.0% 190.6 61.7% 0x00007f8e91643680
           0.0 0.0% 100.0% 166.1 53.8% 0x00007f8e91649223
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91649268
           0.0 0.0% 100.0% 2.0 0.6% 0x00007f8e916492f2
           0.0 0.0% 100.0% 0.4 0.1% 0x00007f8e91649337
           0.0 0.0% 100.0% 104.6 33.9% 0x00007f8e9164937c
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e916493c1
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91649406
           0.0 0.0% 100.0% 1.5 0.5% 0x00007f8e9164944b
           0.0 0.0% 100.0% 161.2 52.2% 0x00007f8e91649787
           0.0 0.0% 100.0% 0.1 0.0% 0x00007f8e9164989b
           0.0 0.0% 100.0% 1.5 0.5% 0x00007f8e916498e0
           0.0 0.0% 100.0% 1.0 0.3% 0x00007f8e916499af
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e916646be
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91665e82
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91665e90
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91666d58
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91666d66
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91667882
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e916683a2
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e916683b0
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91669f8a
           0.0 0.0% 100.0% 263.9 85.5% 0x00007f8e9166a3f2
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9166b027
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9166b035
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9166ca8b
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9166d668
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9166d676
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9166da4c
           0.0 0.0% 100.0% 0.1 0.0% 0x00007f8e9166da5a
           0.0 0.0% 100.0% 0.3 0.1% 0x00007f8e9167fb02
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9167fb10
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9167ffc2
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91681ac6
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91681ad4
           0.0 0.0% 100.0% 0.8 0.3% 0x00007f8e91682306
           0.0 0.0% 100.0% 0.6 0.2% 0x00007f8e91682314
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e916826a6
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e916826b4
           0.0 0.0% 100.0% 1.4 0.4% 0x00007f8e91683847
           0.0 0.0% 100.0% 0.8 0.2% 0x00007f8e91683855
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91683dbf
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91683dcd
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9168425d
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9168482f
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9168483d
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9168976d
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91712278
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9171fcc5
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9174a344
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9175fba3
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91769d57
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9176b16b
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91771d2f
           0.0 0.0% 100.0% 0.2 0.1% 0x00007f8e9179aefb
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9179eab4
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e917cb85f
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e917cb8a7
           0.0 0.0% 100.0% 0.8 0.3% 0x00007f8e91805362
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91812a0f
           0.0 0.0% 100.0% 74.5 24.1% 0x00007f8e91815c33
           0.0 0.0% 100.0% 0.8 0.3% 0x00007f8e9181a057
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9181a097
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9181a217
           0.0 0.0% 100.0% 0.8 0.3% 0x00007f8e9181a503
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9181a987
           0.0 0.0% 100.0% 0.1 0.0% 0x00007f8e9181f903
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e918215e2
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e918227cb
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9182a46b
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91842ce3
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91882d63
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9189d40f
           0.0 0.0% 100.0% 0.2 0.1% 0x00007f8e918be9b3
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e918c2a63
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e919319b7
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e91931c2f
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9193715f
           0.0 0.0% 100.0% 0.0 0.0% 0x00007f8e9198907f
           0.0 0.0% 100.0% 0.0 0.0% 0x00007fff9870b522
           0.0 0.0% 100.0% 0.0 0.0% 0x786d582d00673172
           0.0 0.0% 100.0% 0.0 0.0% AbstractCompiler::initialize_runtimes
           0.0 0.0% 100.0% 0.0 0.0% AdapterHandlerLibrary::create_native_wrapper
           0.0 0.0% 100.0% 0.0 0.0% AdapterHandlerLibrary::get_adapter
           0.0 0.0% 100.0% 0.0 0.0% AdapterHandlerLibrary::initialize
           0.0 0.0% 100.0% 0.0 0.0% AdapterHandlerLibrary::new_entry
           0.0 0.0% 100.0% 0.0 0.0% AdjoiningGenerations::AdjoiningGenerations
           0.0 0.0% 100.0% 0.0 0.0% Agent_OnLoad
           0.0 0.0% 100.0% 0.1 0.0% Arena::Arena
           0.0 0.0% 100.0% 1.4 0.5% Arena::grow
           0.0 0.0% 100.0% 0.0 0.0% Arguments::add_property
           0.0 0.0% 100.0% 0.0 0.0% Arguments::parse
           0.0 0.0% 100.0% 0.0 0.0% Arguments::parse_each_vm_init_arg
           0.0 0.0% 100.0% 0.0 0.0% Arguments::parse_vm_init_args
           0.0 0.0% 100.0% 0.0 0.0% Assembler::jcc
           0.0 0.0% 100.0% 0.0 0.0% Assembler::jmp
           0.0 0.0% 100.0% 0.0 0.0% AttachListener::init
           0.0 0.0% 100.0% 0.0 0.0% AttachListener::is_init_trigger
           0.0 0.0% 100.0% 0.0 0.0% BCEscapeAnalyzer::BCEscapeAnalyzer
           0.0 0.0% 100.0% 0.0 0.0% BCEscapeAnalyzer::compute_escape_info
           0.0 0.0% 100.0% 0.0 0.0% BCEscapeAnalyzer::invoke
           0.0 0.0% 100.0% 0.0 0.0% BCEscapeAnalyzer::iterate_blocks
           0.0 0.0% 100.0% 0.0 0.0% BCEscapeAnalyzer::iterate_one_block
           0.0 0.0% 100.0% 39.8 12.9% BasicHashtable::new_entry
           0.0 0.0% 100.0% 5.6 1.8% C2Compiler::compile_method
           0.0 0.0% 100.0% 0.0 0.0% C2Compiler::initialize
           0.0 0.0% 100.0% 0.0 0.0% C2Compiler::initialize_runtime
           0.0 0.0% 100.0% 3.0 1.0% CHeapObj::operator new
           0.0 0.0% 100.0% 1.5 0.5% ChunkPool::allocate
           0.0 0.0% 100.0% 161.1 52.2% ClassFileParser::parseClassFile
           0.0 0.0% 100.0% 160.9 52.1% ClassFileParser::parse_constant_pool
           0.0 0.0% 100.0% 160.9 52.1% ClassFileParser::parse_constant_pool_entries
           0.0 0.0% 100.0% 0.1 0.0% ClassFileParser::parse_interfaces
           0.0 0.0% 100.0% 0.1 0.0% ClassFileParser::parse_method
           0.0 0.0% 100.0% 0.1 0.0% ClassFileParser::parse_methods
           0.0 0.0% 100.0% 0.0 0.0% ClassLoader::add_package
           0.0 0.0% 100.0% 0.3 0.1% ClassLoader::create_class_path_entry
           0.0 0.0% 100.0% 0.0 0.0% ClassLoader::create_package_info_table
           0.0 0.0% 100.0% 0.0 0.0% ClassLoader::initialize
           0.0 0.0% 100.0% 4.2 1.4% ClassLoader::load_classfile
           0.0 0.0% 100.0% 0.0 0.0% ClassLoader::load_zip_library
           0.0 0.0% 100.0% 0.0 0.0% ClassLoader::setup_bootstrap_search_path
           0.0 0.0% 100.0% 0.0 0.0% ClassLoader::setup_meta_index
           0.0 0.0% 100.0% 0.0 0.0% ClassPathZipEntry::ClassPathZipEntry
           0.0 0.0% 100.0% 0.0 0.0% ClassPathZipEntry::open_stream
           0.0 0.0% 100.0% 0.0 0.0% ClassVerifier::change_sig_to_verificationType
           0.0 0.0% 100.0% 0.0 0.0% ClassVerifier::verify_class
           0.0 0.0% 100.0% 0.0 0.0% ClassVerifier::verify_exception_handler_table
           0.0 0.0% 100.0% 0.0 0.0% ClassVerifier::verify_exception_handler_targets
           0.0 0.0% 100.0% 0.0 0.0% ClassVerifier::verify_invoke_instructions
           0.0 0.0% 100.0% 0.0 0.0% ClassVerifier::verify_method
           0.0 0.0% 100.0% 0.0 0.0% ClassVerifier::verify_return_value
           0.0 0.0% 100.0% 0.7 0.2% CodeBlob::CodeBlob
           0.0 0.0% 100.0% 0.7 0.2% CodeBlob::set_oop_maps
           0.0 0.0% 100.0% 4.6 1.5% CodeBuffer::block_comment
           0.0 0.0% 100.0% 0.0 0.0% CodeBuffer::create_patch_overflow
           0.0 0.0% 100.0% 0.0 0.0% CodeCache::initialize
           0.0 0.0% 100.0% 4.8 1.6% Compile::Code_Gen
           0.0 0.0% 100.0% 5.6 1.8% Compile::Compile
           0.0 0.0% 100.0% 0.0 0.0% Compile::Optimize
           0.0 0.0% 100.0% 0.0 0.0% Compile::call_generator
           0.0 0.0% 100.0% 4.6 1.5% Compile::fill_buffer
           0.0 0.0% 100.0% 0.0 0.0% Compile::scratch_emit_size
           0.0 0.0% 100.0% 0.0 0.0% CompileBroker::allocate_task
           0.0 0.0% 100.0% 0.0 0.0% CompileBroker::compilation_init
           0.0 0.0% 100.0% 0.1 0.0% CompileBroker::compile_method
           0.0 0.0% 100.0% 0.0 0.0% CompileBroker::compile_method_base
           0.0 0.0% 100.0% 5.6 1.8% CompileBroker::compiler_thread_loop
           0.0 0.0% 100.0% 0.0 0.0% CompileBroker::create_compile_task
           0.0 0.0% 100.0% 0.0 0.0% CompileBroker::init_compiler_threads
           0.0 0.0% 100.0% 5.6 1.8% CompileBroker::invoke_compiler_on_method
           0.0 0.0% 100.0% 0.0 0.0% CompileBroker::make_compiler_thread
           0.0 0.0% 100.0% 0.0 0.0% CompileWrapper::CompileWrapper
           0.0 0.0% 100.0% 0.0 0.0% CompilerThread::CompilerThread
           0.0 0.0% 100.0% 0.0 0.0% ConnectionGraph::build_connection_graph
           0.0 0.0% 100.0% 0.0 0.0% ConnectionGraph::compute_escape
           0.0 0.0% 100.0% 0.0 0.0% ConnectionGraph::do_analysis
           0.0 0.0% 100.0% 0.0 0.0% ConnectionGraph::process_call_arguments
           0.0 0.0% 100.0% 0.0 0.0% ConnectionGraph::process_call_result
           0.0 0.0% 100.0% 0.0 0.0% ConnectionGraph::record_for_escape_analysis
           0.0 0.0% 100.0% 0.0 0.0% ContinueInNewThread
           0.0 0.0% 100.0% 0.0 0.0% CreateExecutionEnvironment
           0.0 0.0% 100.0% 0.0 0.0% DCmdRegistrant::register_dcmds
           0.0 0.0% 100.0% 0.0 0.0% DataLayout::data_in
           0.0 0.0% 100.0% 0.0 0.0% Deoptimization::create_vframeArray
           0.0 0.0% 100.0% 0.0 0.0% Deoptimization::fetch_unroll_info_helper
           0.0 0.0% 100.0% 0.0 0.0% DeoptimizationBlob::create
           0.0 0.0% 100.0% 0.0 0.0% Dictionary::Dictionary
           0.0 0.0% 100.0% 0.6 0.2% Dictionary::add_klass
           0.0 0.0% 100.0% 0.0 0.0% Dictionary::add_protection_domain
           0.0 0.0% 100.0% 0.0 0.0% ExceptionBlob::create
           0.0 0.0% 100.0% 0.0 0.0% Exceptions::_throw_msg
           0.0 0.0% 100.0% 0.0 0.0% Exceptions::new_exception@6543b0
           0.0 0.0% 100.0% 0.0 0.0% Exceptions::new_exception@654a30
           0.0 0.0% 100.0% 0.0 0.0% GCMemoryManager::initialize_gc_stat_info
           0.0 0.0% 100.0% 0.0 0.0% GCStatInfo::GCStatInfo
           0.0 0.0% 100.0% 0.0 0.0% GCTaskManager::execute_and_wait
           0.0 0.0% 100.0% 0.1 0.0% GCTaskManager::initialize
           0.0 0.0% 100.0% 0.0 0.0% GCTaskThread::GCTaskThread
           0.0 0.0% 100.0% 1.4 0.5% GCTaskThread::run
           0.0 0.0% 100.0% 0.4 0.1% GenericGrowableArray::raw_allocate
           0.0 0.0% 100.0% 0.0 0.0% GetJavaProperties
           0.0 0.0% 100.0% 0.0 0.0% GetLauncherHelperClass
           0.0 0.0% 100.0% 0.0 0.0% Handle::Handle
           0.0 0.0% 100.0% 0.2 0.1% HandleArea::allocate_handle
           0.0 0.0% 100.0% 39.8 12.9% Hashtable::new_entry
           0.0 0.0% 100.0% 0.0 0.0% Histogram::Histogram
           0.0 0.0% 100.0% 0.0 0.0% Histogram::add_element
           0.0 0.0% 100.0% 0.0 0.0% InlineTree::ok_to_inline
           0.0 0.0% 100.0% 0.0 0.0% IntHistogram::IntHistogram
           0.0 0.0% 100.0% 0.0 0.0% InterpreterGenerator::generate_normal_entry
           0.0 0.0% 100.0% 0.0 0.0% InterpreterGenerator::lock_method
           0.0 0.0% 100.0% 0.0 0.0% InterpreterMacroAssembler::lock_object
           0.0 0.0% 100.0% 2.1 0.7% InterpreterRuntime::_new
           0.0 0.0% 100.0% 0.1 0.0% InterpreterRuntime::anewarray
           0.0 0.0% 100.0% 0.1 0.0% InterpreterRuntime::frequency_counter_overflow
           0.0 0.0% 100.0% 0.1 0.0% InterpreterRuntime::frequency_counter_overflow_inner
           0.0 0.0% 100.0% 0.2 0.1% InterpreterRuntime::ldc
           0.0 0.0% 100.0% 0.0 0.0% InterpreterRuntime::prepare_native_call
           0.0 0.0% 100.0% 0.0 0.0% InterpreterRuntime::quicken_io_cc
           0.0 0.0% 100.0% 0.0 0.0% InterpreterRuntime::register_finalizer
           0.0 0.0% 100.0% 0.4 0.1% InterpreterRuntime::resolve_get_put
           0.0 0.0% 100.0% 1.4 0.4% InterpreterRuntime::resolve_invoke
           0.0 0.0% 100.0% 0.0 0.0% InterpreterRuntime::throw_ArrayIndexOutOfBoundsException
           0.0 0.0% 100.0% 0.0 0.0% JDK_Version::initialize
           0.0 0.0% 100.0% 0.0 0.0% JMXStartRemoteDCmd::num_arguments
           0.0 0.0% 100.0% 0.4 0.1% JNIHandleBlock::allocate_block
           0.0 0.0% 100.0% 0.3 0.1% JNIHandleBlock::allocate_handle
           0.0 0.0% 100.0% 0.0 0.0% JNIHandles::initialize
           0.0 0.0% 100.0% 0.2 0.1% JNIHandles::make_weak_global
           0.0 0.0% 100.0% 0.0 0.0% JNIHistogramElement::JNIHistogramElement
           0.0 0.0% 100.0% 29.7 9.6% JNI_CreateJavaVM
           0.0 0.0% 100.0% 0.0 0.0% JNI_OnLoad
           0.0 0.0% 100.0% 0.0 0.0% JNU_CallStaticMethodByName
           0.0 0.0% 100.0% 0.0 0.0% JNU_GetStringPlatformChars
           0.0 0.0% 100.0% 0.0 0.0% JNU_NewObjectByName
           0.0 0.0% 100.0% 0.0 0.0% JNU_NewStringPlatform
           0.0 0.0% 100.0% 0.0 0.0% JVMHistogramElement::JVMHistogramElement
           0.0 0.0% 100.0% 0.0 0.0% JVM_DefineClass
           0.0 0.0% 100.0% 98.5 31.9% JVM_DefineClassWithSource
           0.0 0.0% 100.0% 25.3 8.2% JVM_DoPrivileged
           0.0 0.0% 100.0% 0.0 0.0% JVM_FindClassFromBootLoader
           0.0 0.0% 100.0% 0.0 0.0% JVM_FindClassFromCaller
           0.0 0.0% 100.0% 0.1 0.0% JVM_FindClassFromClass
           0.0 0.0% 100.0% 0.5 0.2% JVM_FindClassFromClassLoader
           0.0 0.0% 100.0% 1.1 0.3% JVM_FindLoadedClass
           0.0 0.0% 100.0% 0.0 0.0% JVM_GetClassDeclaredConstructors
           0.0 0.0% 100.0% 0.0 0.0% JVM_GetClassDeclaredFields
           0.0 0.0% 100.0% 0.0 0.0% JVM_GetClassDeclaredMethods
           0.0 0.0% 100.0% 0.3 0.1% JVM_GetClassName
           0.0 0.0% 100.0% 0.0 0.0% JVM_InitProperties
           0.0 0.0% 100.0% 1.4 0.5% JVM_InvokeMethod
           0.0 0.0% 100.0% 0.0 0.0% JVM_LoadLibrary
           0.0 0.0% 100.0% 0.0 0.0% JVM_MonitorWait
           0.0 0.0% 100.0% 0.3 0.1% JVM_NewInstanceFromConstructor
           0.0 0.0% 100.0% 0.0 0.0% JVM_RawMonitorCreate
           0.0 0.0% 100.0% 0.0 0.0% JVM_RawMonitorEnter
           0.0 0.0% 100.0% 0.0 0.0% JVM_RegisterUnsafeMethods
           0.0 0.0% 100.0% 0.3 0.1% JVM_StartThread
           0.0 0.0% 100.0% 0.1 0.0% JavaCallWrapper::JavaCallWrapper
           0.0 0.0% 100.0% 28.0 9.1% JavaCalls::call
           0.0 0.0% 100.0% 190.6 61.7% JavaCalls::call_helper
           0.0 0.0% 100.0% 0.0 0.0% JavaCalls::call_special@794420
           0.0 0.0% 100.0% 0.0 0.0% JavaCalls::call_special@794520
           0.0 0.0% 100.0% 0.0 0.0% JavaCalls::call_static@794310
           0.0 0.0% 100.0% 0.0 0.0% JavaCalls::call_static@794960
           0.0 0.0% 100.0% 0.0 0.0% JavaCalls::call_static@794ac0
           0.0 0.0% 100.0% 0.2 0.1% JavaCalls::call_static@794c30
           0.0 0.0% 100.0% 164.5 53.3% JavaCalls::call_virtual@794d80
           0.0 0.0% 100.0% 2.6 0.8% JavaCalls::call_virtual@795280
           0.0 0.0% 100.0% 161.9 52.5% JavaCalls::call_virtual@795300
           0.0 0.0% 100.0% 30.1 9.7% JavaMain
           0.0 0.0% 100.0% 0.1 0.0% JavaThread::JavaThread
           0.0 0.0% 100.0% 0.0 0.0% JavaThread::initialize
           0.0 0.0% 100.0% 0.3 0.1% JavaThread::oops_do
           0.0 0.0% 100.0% 0.0 0.0% JavaThread::run
           0.0 0.0% 100.0% 167.5 54.2% JavaThread::thread_main_inner
           0.0 0.0% 100.0% 0.0 0.0% Java_java_io_UnixFileSystem_canonicalize0
           0.0 0.0% 100.0% 0.0 0.0% Java_java_io_UnixFileSystem_getBooleanAttributes0
           0.0 0.0% 100.0% 0.0 0.0% Java_java_lang_ClassLoader_00024NativeLibrary_load
           0.0 0.0% 100.0% 98.5 31.9% Java_java_lang_ClassLoader_defineClass1
           0.0 0.0% 100.0% 0.5 0.2% Java_java_lang_ClassLoader_findBootstrapClass
           0.0 0.0% 100.0% 0.0 0.0% Java_java_lang_Class_forName0
           0.0 0.0% 100.0% 0.0 0.0% Java_java_lang_System_initProperties
           0.0 0.0% 100.0% 0.0 0.0% Java_java_lang_ref_Finalizer_invokeFinalizeMethod
           0.0 0.0% 100.0% 0.0 0.0% Java_java_net_Inet4Address_init
           0.0 0.0% 100.0% 0.0 0.0% Java_java_net_Inet6AddressImpl_getHostByAddr
           0.0 0.0% 100.0% 0.0 0.0% Java_java_net_Inet6AddressImpl_lookupAllHostAddr
           0.0 0.0% 100.0% 0.0 0.0% Java_java_net_Inet6Address_init
           0.0 0.0% 100.0% 0.0 0.0% Java_java_util_zip_ZipFile_getEntry
           0.0 0.0% 100.0% 0.1 0.0% Java_java_util_zip_ZipFile_open
           0.0 0.0% 100.0% 0.0 0.0% Java_sun_management_MemoryPoolImpl_getUsage0
           0.0 0.0% 100.0% 0.0 0.0% JvmtiEnv::AddToBootstrapClassLoaderSearch
           0.0 0.0% 100.0% 59.2 19.2% JvmtiEnv::RedefineClasses
           0.0 0.0% 100.0% 0.0 0.0% JvmtiEnv::SetThreadLocalStorage
           0.0 0.0% 100.0% 0.0 0.0% JvmtiEnv::create_a_jvmti
           0.0 0.0% 100.0% 0.0 0.0% JvmtiEnvBase::JvmtiEnvBase
           0.0 0.0% 100.0% 0.0 0.0% JvmtiEnvBase::globally_initialize
           0.0 0.0% 100.0% 0.0 0.0% JvmtiEventControllerPrivate::env_initialize
           0.0 0.0% 100.0% 0.0 0.0% JvmtiEventMark::JvmtiEventMark
           0.0 0.0% 100.0% 0.0 0.0% JvmtiExport::get_jvmti_interface
           0.0 0.0% 100.0% 0.1 0.0% JvmtiExport::post_class_file_load_hook
           0.0 0.0% 100.0% 0.2 0.1% JvmtiExport::post_vm_initialized
           0.0 0.0% 100.0% 0.0 0.0% JvmtiGetLoadedClasses::getClassLoaderClasses
           0.0 0.0% 100.0% 0.1 0.0% JvmtiGetLoadedClasses::getLoadedClasses
           0.0 0.0% 100.0% 0.0 0.0% JvmtiThreadState::JvmtiThreadState
           0.0 0.0% 100.0% 0.0 0.0% JvmtiThreadState::add_env
           0.0 0.0% 100.0% 0.0 0.0% JvmtiThreadState::state_for
           0.0 0.0% 100.0% 0.0 0.0% JvmtiTrace::initialize
           0.0 0.0% 100.0% 0.0 0.0% JvmtiUtil::single_threaded_resource_area
           0.0 0.0% 100.0% 0.0 0.0% Label::add_patch_at
           0.0 0.0% 100.0% 0.3 0.1% LazyClassPathEntry::open_stream
           0.0 0.0% 100.0% 0.3 0.1% LazyClassPathEntry::resolve_entry
           0.0 0.0% 100.0% 0.0 0.0% LinkResolver::linktime_resolve_static_method
           0.0 0.0% 100.0% 0.0 0.0% LinkResolver::linktime_resolve_virtual_method
           0.0 0.0% 100.0% 0.4 0.1% LinkResolver::resolve_field@922450
           0.0 0.0% 100.0% 0.4 0.1% LinkResolver::resolve_field@922cc0
           0.0 0.0% 100.0% 1.5 0.5% LinkResolver::resolve_invoke
           0.0 0.0% 100.0% 0.0 0.0% LinkResolver::resolve_invokeinterface
           0.0 0.0% 100.0% 0.0 0.0% LinkResolver::resolve_invokevirtual
           0.0 0.0% 100.0% 0.0 0.0% LinkResolver::resolve_method
           0.0 0.0% 100.0% 1.0 0.3% LinkResolver::resolve_pool
           0.0 0.0% 100.0% 0.0 0.0% LinkResolver::resolve_static_call
           0.0 0.0% 100.0% 0.0 0.0% LinkResolver::runtime_resolve_virtual_method
           0.0 0.0% 100.0% 0.0 0.0% LoadJavaVM
           0.0 0.0% 100.0% 0.0 0.0% LoadMainClass
           0.0 0.0% 100.0% 0.0 0.0% LoaderConstraintTable::LoaderConstraintTable
           0.0 0.0% 100.0% 0.0 0.0% LoaderConstraintTable::add_entry
           0.0 0.0% 100.0% 0.0 0.0% LoaderConstraintTable::extend_loader_constraint
           0.0 0.0% 100.0% 0.0 0.0% LoaderConstraintTable::new_entry
           0.0 0.0% 100.0% 0.0 0.0% Management::init
           0.0 0.0% 100.0% 0.0 0.0% Management::initialize
           0.0 0.0% 100.0% 0.0 0.0% Management::java_lang_management_MemoryUsage_klass
           0.0 0.0% 100.0% 0.0 0.0% Management::load_and_initialize_klass
           0.0 0.0% 100.0% 0.2 0.0% MarkFromRootsTask::do_it
           0.0 0.0% 100.0% 0.0 0.0% Matcher::Label_Root
           0.0 0.0% 100.0% 0.0 0.0% Matcher::Matcher
           0.0 0.0% 100.0% 0.1 0.0% Matcher::match
           0.0 0.0% 100.0% 0.0 0.0% Matcher::match_tree
           0.0 0.0% 100.0% 0.1 0.0% Matcher::xform
           0.0 0.0% 100.0% 0.0 0.0% MemoryManager::get_memory_manager_instance
           0.0 0.0% 100.0% 0.0 0.0% MemoryManager::get_psMarkSweep_memory_manager
           0.0 0.0% 100.0% 0.0 0.0% MemoryManager::get_psScavenge_memory_manager
           0.0 0.0% 100.0% 0.0 0.0% MemoryPool::get_memory_pool_instance
           0.0 0.0% 100.0% 0.0 0.0% MemoryService::add_code_heap_memory_pool
           0.0 0.0% 100.0% 0.0 0.0% MemoryService::add_parallel_scavenge_heap_info
           0.0 0.0% 100.0% 0.0 0.0% MemoryService::add_psYoung_memory_pool
           0.0 0.0% 100.0% 0.0 0.0% MemoryService::create_MemoryUsage_obj
           0.0 0.0% 100.0% 0.0 0.0% MemoryService::set_universe_heap
           0.0 0.0% 100.0% 0.0 0.0% Monitor::jvm_raw_lock
           0.0 0.0% 100.0% 0.0 0.0% MonitorSupply::reserve
           0.0 0.0% 100.0% 0.1 0.0% MoveAndUpdateClosure::do_addr
           0.0 0.0% 100.0% 0.0 0.0% NamedThread::NamedThread
           0.0 0.0% 100.0% 0.0 0.0% NamedThread::set_name
           0.0 0.0% 100.0% 0.0 0.0% NativeLookup::lookup
           0.0 0.0% 100.0% 0.0 0.0% NativeLookup::lookup_base
           0.0 0.0% 100.0% 0.0 0.0% NativeLookup::lookup_entry
           0.0 0.0% 100.0% 0.0 0.0% NativeLookup::lookup_style
           0.0 0.0% 100.0% 0.0 0.0% NewPlatformString
           0.0 0.0% 100.0% 0.0 0.0% Node::clone
           0.0 0.0% 100.0% 0.1 0.0% NonTieredCompPolicy::event
           0.0 0.0% 100.0% 0.0 0.0% OSThread::OSThread
           0.0 0.0% 100.0% 0.0 0.0% OSThread::pd_initialize
           0.0 0.0% 100.0% 0.1 0.0% ObjectSynchronizer::inflate
           0.0 0.0% 100.0% 0.1 0.0% ObjectSynchronizer::slow_enter
           0.0 0.0% 100.0% 0.0 0.0% ObjectSynchronizer::wait
           0.0 0.0% 100.0% 0.3 0.1% OopMapCache::OopMapCache
           0.0 0.0% 100.0% 0.0 0.0% OptoRuntime::generate
           0.0 0.0% 100.0% 0.0 0.0% OptoRuntime::generate_exception_blob
           0.0 0.0% 100.0% 0.0 0.0% OptoRuntime::generate_stub
           0.0 0.0% 100.0% 0.0 0.0% OptoRuntime::handle_exception_C
           0.0 0.0% 100.0% 0.0 0.0% OptoRuntime::handle_exception_C_helper
           0.0 0.0% 100.0% 0.0 0.0% OptoRuntime::register_finalizer
           0.0 0.0% 100.0% 0.1 0.0% PSParallelCompact::invoke
           0.0 0.0% 100.0% 0.1 0.0% PSParallelCompact::invoke_no_policy
           0.0 0.0% 100.0% 19.1 6.2% PSParallelCompact::post_initialize
           0.0 0.0% 100.0% 0.0 0.0% PSParallelCompact::revisit_mdo
           0.0 0.0% 100.0% 0.1 0.0% PSParallelCompact::revisit_weak_klass_link
           0.0 0.0% 100.0% 9.0 2.9% PSPromotionManager::PSPromotionManager
           0.0 0.0% 100.0% 9.0 2.9% PSPromotionManager::initialize
           0.0 0.0% 100.0% 0.0 0.0% PSScavenge::initialize
           0.0 0.0% 100.0% 0.0 0.0% PSScavenge::invoke
           0.0 0.0% 100.0% 0.0 0.0% PSScavenge::invoke_no_policy
           0.0 0.0% 100.0% 0.0 0.0% PSYoungGen::initialize_work
           0.0 0.0% 100.0% 10.1 3.3% ParCompactionManager::ParCompactionManager
           0.0 0.0% 100.0% 1.2 0.4% ParCompactionManager::follow_marking_stacks
           0.0 0.0% 100.0% 19.1 6.2% ParCompactionManager::initialize
           0.0 0.0% 100.0% 0.1 0.0% ParMarkBitMap::iterate
           0.0 0.0% 100.0% 0.0 0.0% ParallelScavengeHeap::failed_mem_allocate
           0.0 0.0% 100.0% 0.1 0.0% ParallelScavengeHeap::failed_permanent_mem_allocate
           0.0 0.0% 100.0% 0.1 0.0% ParallelScavengeHeap::initialize
           0.0 0.0% 100.0% 19.1 6.2% ParallelScavengeHeap::post_initialize
           0.0 0.0% 100.0% 0.1 0.0% ParkEvent::Allocate
           0.0 0.0% 100.0% 0.1 0.0% ParkEvent::operator new
           0.0 0.0% 100.0% 0.0 0.0% Parker::Allocate
           0.0 0.0% 100.0% 0.0 0.0% Parse::Parse
           0.0 0.0% 100.0% 0.0 0.0% Parse::do_all_blocks
           0.0 0.0% 100.0% 0.0 0.0% Parse::do_call
           0.0 0.0% 100.0% 0.0 0.0% Parse::do_one_block
           0.0 0.0% 100.0% 0.0 0.0% Parse::do_one_bytecode
           0.0 0.0% 100.0% 0.0 0.0% ParseGenerator::generate
           0.0 0.0% 100.0% 0.0 0.0% PerfData::PerfData
           0.0 0.0% 100.0% 0.0 0.0% PerfDataList::PerfDataList
           0.0 0.0% 100.0% 0.0 0.0% PerfDataManager::add_item
           0.0 0.0% 100.0% 0.0 0.0% PerfDataManager::create_long_counter
           0.0 0.0% 100.0% 0.0 0.0% PerfDataManager::create_long_variable@aa30a0
           0.0 0.0% 100.0% 0.0 0.0% PerfDataManager::create_long_variable@aa3440
           0.0 0.0% 100.0% 0.0 0.0% PerfDataManager::create_string_constant
           0.0 0.0% 100.0% 0.0 0.0% PerfDataManager::create_string_variable
           0.0 0.0% 100.0% 0.0 0.0% PerfMemory::create_memory_region
           0.0 0.0% 100.0% 0.0 0.0% PerfMemory::initialize
           0.0 0.0% 100.0% 0.0 0.0% PerfStringConstant::PerfStringConstant
           0.0 0.0% 100.0% 0.0 0.0% Perf_Attach
           0.0 0.0% 100.0% 0.1 0.0% PhaseChaitin::Register_Allocate
           0.0 0.0% 100.0% 0.0 0.0% PhaseChaitin::Split
           0.0 0.0% 100.0% 0.0 0.0% PhaseIFG::init
           0.0 0.0% 100.0% 0.0 0.0% PhaseLive::compute
           0.0 0.0% 100.0% 0.0 0.0% PlaceholderTable::PlaceholderTable
           0.0 0.0% 100.0% 0.0 0.0% PlaceholderTable::add_entry
           0.0 0.0% 100.0% 0.0 0.0% PlaceholderTable::find_and_add
           0.0 0.0% 100.0% 0.0 0.0% PredictedCallGenerator::generate
           0.0 0.0% 100.0% 0.0 0.0% ReferenceProcessor::ReferenceProcessor
           0.0 0.0% 100.0% 0.0 0.0% Reflection::get_exception_types
           0.0 0.0% 100.0% 0.0 0.0% Reflection::get_parameter_types
           0.0 0.0% 100.0% 1.8 0.6% Reflection::invoke
           0.0 0.0% 100.0% 0.3 0.1% Reflection::invoke_constructor
           0.0 0.0% 100.0% 1.5 0.5% Reflection::invoke_method
           0.0 0.0% 100.0% 0.0 0.0% Reflection::new_constructor
           0.0 0.0% 100.0% 0.0 0.0% Reflection::new_field
           0.0 0.0% 100.0% 0.0 0.0% Reflection::new_method
           0.0 0.0% 100.0% 0.0 0.0% Reflection::new_type
           0.0 0.0% 100.0% 0.0 0.0% ResolutionErrorTable::ResolutionErrorTable
           0.0 0.0% 100.0% 0.7 0.2% ResourceObj::operator new
           0.0 0.0% 100.0% 0.0 0.0% Rewriter::relocate_and_link@b18410
           0.0 0.0% 100.0% 0.0 0.0% Rewriter::relocate_and_link@b18fa0
           0.0 0.0% 100.0% 0.0 0.0% RuntimeStub::new_runtime_stub
           0.0 0.0% 100.0% 0.0 0.0% SafepointBlob::create
           0.0 0.0% 100.0% 0.0 0.0% ServiceThread::initialize
           0.0 0.0% 100.0% 0.0 0.0% SharedRuntime::generate_deopt_blob
           0.0 0.0% 100.0% 0.0 0.0% SharedRuntime::generate_handler_blob
           0.0 0.0% 100.0% 0.0 0.0% SharedRuntime::generate_i2c2i_adapters
           0.0 0.0% 100.0% 0.0 0.0% SharedRuntime::generate_native_wrapper
           0.0 0.0% 100.0% 0.0 0.0% SharedRuntime::generate_resolve_blob
           0.0 0.0% 100.0% 0.0 0.0% SharedRuntime::generate_stubs
           0.0 0.0% 100.0% 0.0 0.0% SharedRuntime::generate_uncommon_trap_blob
           0.0 0.0% 100.0% 0.0 0.0% SignatureHandlerLibrary::add
           0.0 0.0% 100.0% 0.0 0.0% SignatureStream::as_symbol
           0.0 0.0% 100.0% 0.1 0.0% SimpleCompPolicy::method_invocation_event
           0.0 0.0% 100.0% 0.0 0.0% SpaceCounters::SpaceCounters
           0.0 0.0% 100.0% 0.1 0.0% Stack::alloc
           0.0 0.0% 100.0% 0.1 0.0% Stack::push_segment
           0.0 0.0% 100.0% 0.0 0.0% StackMapFrame::frame_in_exception_handler
           0.0 0.0% 100.0% 0.0 0.0% StackMapFrame::is_assignable_to
           0.0 0.0% 100.0% 0.0 0.0% StackMapFrame::pop_stack
           0.0 0.0% 100.0% 0.0 0.0% StackMapFrame::set_locals_from_arg
           0.0 0.0% 100.0% 0.0 0.0% StackMapTable::check_jump_target
           0.0 0.0% 100.0% 0.0 0.0% StackMapTable::match_stackmap
           0.0 0.0% 100.0% 0.0 0.0% StatSampler::create_misc_perfdata
           0.0 0.0% 100.0% 0.0 0.0% StatSampler::create_system_property_instrumentation
           0.0 0.0% 100.0% 0.0 0.0% StatSampler::engage
           0.0 0.0% 100.0% 0.0 0.0% StatSampler::get_system_property
           0.0 0.0% 100.0% 0.0 0.0% StatSampler::initialize
           0.0 0.0% 100.0% 0.7 0.2% StealMarkingTask::do_it
           0.0 0.0% 100.0% 0.5 0.2% StringTable::basic_add
           0.0 0.0% 100.0% 0.5 0.2% StringTable::intern@bac5c0
           0.0 0.0% 100.0% 0.3 0.1% StringTable::intern@bacc70
           0.0 0.0% 100.0% 0.2 0.1% StringTable::intern@bacf40
           0.0 0.0% 100.0% 0.0 0.0% StubGenerator::generate_all
           0.0 0.0% 100.0% 0.0 0.0% StubGenerator::generate_initial
           0.0 0.0% 100.0% 0.0 0.0% StubGenerator::generate_throw_exception
           0.0 0.0% 100.0% 0.0 0.0% StubGenerator_generate
           0.0 0.0% 100.0% 0.0 0.0% StubRoutines::initialize1
           0.0 0.0% 100.0% 0.0 0.0% StubRoutines::initialize2
           0.0 0.0% 100.0% 123.5 40.0% Symbol::operator new
           0.0 0.0% 100.0% 0.0 0.0% SymbolPropertyTable::SymbolPropertyTable
           0.0 0.0% 100.0% 160.9 52.1% SymbolTable::add
           0.0 0.0% 100.0% 123.5 40.0% SymbolTable::allocate_symbol
           0.0 0.0% 100.0% 1.2 0.4% SymbolTable::basic_add@baab40
           0.0 0.0% 100.0% 160.9 52.1% SymbolTable::basic_add@bab3d0
           0.0 0.0% 100.0% 1.2 0.4% SymbolTable::lookup@baaf00
           0.0 0.0% 100.0% 0.0 0.0% SymbolTable::lookup@babe10
           0.0 0.0% 100.0% 0.0 0.0% SystemDictionary::add_loader_constraint
           0.0 0.0% 100.0% 0.0 0.0% SystemDictionary::check_signature_loaders
           0.0 0.0% 100.0% 0.0 0.0% SystemDictionary::compute_java_system_loader
           0.0 0.0% 100.0% 0.6 0.2% SystemDictionary::define_instance_class
           0.0 0.0% 100.0% 0.1 0.0% SystemDictionary::find_or_define_instance_class
           0.0 0.0% 100.0% 0.0 0.0% SystemDictionary::handle_resolution_exception
           0.0 0.0% 100.0% 0.0 0.0% SystemDictionary::initialize
           0.0 0.0% 100.0% 0.6 0.2% SystemDictionary::initialize_preloaded_classes
           0.0 0.0% 100.0% 0.6 0.2% SystemDictionary::initialize_wk_klass
           0.0 0.0% 100.0% 0.6 0.2% SystemDictionary::initialize_wk_klasses_until
           0.0 0.0% 100.0% 6.5 2.1% SystemDictionary::load_instance_class
           0.0 0.0% 100.0% 59.2 19.2% SystemDictionary::parse_stream
           0.0 0.0% 100.0% 0.0 0.0% SystemDictionary::resolve_array_class_or_null
           0.0 0.0% 100.0% 98.5 31.9% SystemDictionary::resolve_from_stream
           0.0 0.0% 100.0% 4.4 1.4% SystemDictionary::resolve_instance_class_or_null
           0.0 0.0% 100.0% 3.7 1.2% SystemDictionary::resolve_or_fail@bbb7f0
           0.0 0.0% 100.0% 0.0 0.0% SystemDictionary::resolve_or_fail@bbc220
           0.0 0.0% 100.0% 4.4 1.4% SystemDictionary::resolve_or_null
           0.0 0.0% 100.0% 0.6 0.2% SystemDictionary::resolve_super_or_fail
           0.0 0.0% 100.0% 0.6 0.2% SystemDictionary::update_dictionary
           0.0 0.0% 100.0% 0.0 0.0% SystemDictionary::validate_protection_domain
           0.0 0.0% 100.0% 0.0 0.0% SystemProperty::SystemProperty
           0.0 0.0% 100.0% 0.0 0.0% SystemProperty::append_value
           0.0 0.0% 100.0% 0.0 0.0% TemplateInterpreter::initialize
           0.0 0.0% 100.0% 0.0 0.0% TemplateInterpreterGenerator::generate_all
           0.0 0.0% 100.0% 0.2 0.0% Thread::operator new
           0.0 0.0% 100.0% 0.0 0.0% ThreadLocalAllocBuffer::startup_initialization
           0.0 0.0% 100.0% 0.3 0.1% ThreadRootsMarkingTask::do_it
           0.0 0.0% 100.0% 0.3 0.1% ThreadRootsTask::do_it
           0.0 0.0% 100.0% 0.0 0.0% ThreadSafepointState::create
           0.0 0.0% 100.0% 29.8 9.7% Threads::create_vm
           0.0 0.0% 100.0% 0.0 0.0% Threads::create_vm_init_agents
           0.0 0.0% 100.0% 0.0 0.0% Type::Initialize
           0.0 0.0% 100.0% 0.0 0.0% Type::Initialize_shared
           0.0 0.0% 100.0% 0.0 0.0% UncommonTrapBlob::create
           0.0 0.0% 100.0% 0.8 0.2% Universe::genesis
           0.0 0.0% 100.0% 0.1 0.0% Universe::initialize_heap
           0.0 0.0% 100.0% 0.8 0.2% Unsafe_AllocateMemory
           0.0 0.0% 100.0% 0.0 0.0% Unsafe_DefineClass
           0.0 0.0% 100.0% 0.0 0.0% Unsafe_DefineClass1
           0.0 0.0% 100.0% 0.0 0.0% Unsafe_EnsureClassInitialized
           0.0 0.0% 100.0% 0.0 0.0% VMThread::create
           0.0 0.0% 100.0% 1.5 0.5% VMThread::evaluate_operation
           0.0 0.0% 100.0% 59.2 19.2% VMThread::execute
           0.0 0.0% 100.0% 1.5 0.5% VMThread::loop
           0.0 0.0% 100.0% 1.5 0.5% VMThread::run
           0.0 0.0% 100.0% 1.5 0.5% VM_Operation::evaluate
           0.0 0.0% 100.0% 0.0 0.0% VM_ParallelGCFailedAllocation::doit
           0.0 0.0% 100.0% 0.1 0.0% VM_ParallelGCFailedPermanentAllocation::doit
           0.0 0.0% 100.0% 1.4 0.4% VM_RedefineClasses::doit
           0.0 0.0% 100.0% 59.2 19.2% VM_RedefineClasses::doit_prologue
           0.0 0.0% 100.0% 59.2 19.2% VM_RedefineClasses::load_new_class_versions
           0.0 0.0% 100.0% 1.4 0.4% VM_RedefineClasses::redefine_single_class
           0.0 0.0% 100.0% 0.0 0.0% VerificationType::is_reference_assignable_from
           0.0 0.0% 100.0% 0.0 0.0% Verifier::inference_verify
           0.0 0.0% 100.0% 0.1 0.0% Verifier::verify
           0.0 0.0% 100.0% 0.0 0.0% VerifyClassForMajorVersion
           0.0 0.0% 100.0% 0.0 0.0% WatcherThread::WatcherThread
           0.0 0.0% 100.0% 0.0 0.0% WatcherThread::start
           0.0 0.0% 100.0% 0.0 0.0% ZIP_FindEntry
           0.0 0.0% 100.0% 0.0 0.0% ZIP_GetEntry
           0.0 0.0% 100.0% 0.0 0.0% ZIP_Get_From_Cache
           0.0 0.0% 100.0% 0.0 0.0% ZIP_Open_Generic
           0.0 0.0% 100.0% 0.0 0.0% _Z12AllocateHeapmPKcN17AllocFailStrategy13AllocFailEnumE.clone.1
           0.0 0.0% 100.0% 0.0 0.0% _Z12AllocateHeapmPKcN17AllocFailStrategy13AllocFailEnumE.clone.2
           0.0 0.0% 100.0% 0.0 0.0% _ZL14lookup_on_loadP12AgentLibraryPPKcm.clone.0
           0.0 0.0% 100.0% 0.5 0.2% _ZN12LinkResolver19resolve_static_callER8CallInfoR11KlassHandleP6SymbolS5_S2_bbP6Thread.clone.3
           0.0 0.0% 100.0% 0.0 0.0% _ZN16CompilerCountersC2EPKciP6Thread.clone.3
           0.0 0.0% 100.0% 0.1 0.0% _ZN17PSParallelCompact15move_and_updateEP20ParCompactionManagerNS_7SpaceIdE.clone.14
           0.0 0.0% 100.0% 0.0 0.0% _ZN5ChunknwEmN17AllocFailStrategy13AllocFailEnumEm.clone.3
           0.0 0.0% 100.0% 0.0 0.0% _ZN9Arguments23PropertyList_unique_addEPP14SystemPropertyPKcPch.clone.5
           0.0 0.0% 100.0% 140.6 45.5% __clone
           0.0 0.0% 100.0% 0.0 0.0% __cxa_atexit_internal
           0.0 0.0% 100.0% 3.8 1.2% __do_global_ctors_aux@13940
           0.0 0.0% 100.0% 0.0 0.0% __do_global_ctors_aux@c9f9e0
           0.0 0.0% 100.0% 0.0 0.0% __libc_dlopen_mode
           0.0 0.0% 100.0% 0.0 0.0% __libc_start_main
           0.0 0.0% 100.0% 0.0 0.0% __nss_lookup
           0.0 0.0% 100.0% 0.0 0.0% __nss_lookup_function
           0.0 0.0% 100.0% 0.0 0.0% __nss_next2
           0.0 0.0% 100.0% 0.0 0.0% __nss_passwd_lookup2
           0.0 0.0% 100.0% 0.0 0.0% _dl_catch_error
           0.0 0.0% 100.0% 0.0 0.0% _dl_map_object
           0.0 0.0% 100.0% 0.0 0.0% _dl_map_object_from_fd
           0.0 0.0% 100.0% 0.0 0.0% _dl_open
           0.0 0.0% 100.0% 0.0 0.0% _dlerror_run
           0.0 0.0% 100.0% 0.0 0.0% _init@1e6030
           0.0 0.0% 100.0% 3.8 1.2% _init@5600
           0.0 0.0% 100.0% 0.0 0.0% _nl_find_locale
           0.0 0.0% 100.0% 0.0 0.0% _nl_load_locale_from_archive
           0.0 0.0% 100.0% 0.0 0.0% _start
           0.0 0.0% 100.0% 0.0 0.0% appendBootClassPath
           0.0 0.0% 100.0% 0.0 0.0% arrayKlass::allocate_arrayArray
           0.0 0.0% 100.0% 0.0 0.0% arrayKlassKlass::oop_follow_contents
           0.0 0.0% 100.0% 0.0 0.0% ciBytecodeStream::get_method
           0.0 0.0% 100.0% 0.0 0.0% ciEnv::ciEnv
           0.0 0.0% 100.0% 0.0 0.0% ciEnv::get_klass_by_name_impl
           0.0 0.0% 100.0% 0.0 0.0% ciEnv::get_method_by_index
           0.0 0.0% 100.0% 0.0 0.0% ciEnv::get_method_by_index_impl
           0.0 0.0% 100.0% 0.7 0.2% ciEnv::register_method
           0.0 0.0% 100.0% 0.0 0.0% ciInstanceKlass::ciInstanceKlass
           0.0 0.0% 100.0% 0.0 0.0% ciKlass::ciKlass
           0.0 0.0% 100.0% 0.0 0.0% ciMethod::ciMethod
           0.0 0.0% 100.0% 0.0 0.0% ciMethod::get_bcea
           0.0 0.0% 100.0% 0.0 0.0% ciMethod::get_flow_analysis
           0.0 0.0% 100.0% 0.0 0.0% ciMethod::method_data
           0.0 0.0% 100.0% 0.0 0.0% ciMethodData::ciMethodData
           0.0 0.0% 100.0% 0.0 0.0% ciObject::ciObject
           0.0 0.0% 100.0% 0.0 0.0% ciObjectFactory::create_new_object
           0.0 0.0% 100.0% 0.0 0.0% ciObjectFactory::get
           0.0 0.0% 100.0% 0.0 0.0% ciSignature::ciSignature
           0.0 0.0% 100.0% 0.0 0.0% ciType::ciType
           0.0 0.0% 100.0% 0.0 0.0% ciTypeFlow::StateVector::apply_one_bytecode
           0.0 0.0% 100.0% 0.0 0.0% ciTypeFlow::StateVector::do_invoke
           0.0 0.0% 100.0% 0.0 0.0% ciTypeFlow::df_flow_types
           0.0 0.0% 100.0% 0.0 0.0% ciTypeFlow::do_flow
           0.0 0.0% 100.0% 0.0 0.0% ciTypeFlow::flow_block
           0.0 0.0% 100.0% 0.0 0.0% ciTypeFlow::flow_types
           0.0 0.0% 100.0% 0.0 0.0% cmpFastUnlockNode::emit
           0.0 0.0% 100.0% 0.1 0.0% commonGetClassList
           0.0 0.0% 100.0% 0.0 0.0% confirmingTLSSet
           0.0 0.0% 100.0% 3.3 1.1% constantPoolOopDesc::klass_at_impl
           0.0 0.0% 100.0% 1.3 0.4% constantPoolOopDesc::klass_ref_at
           0.0 0.0% 100.0% 0.0 0.0% constantPoolOopDesc::resolve_string_constants_impl
           0.0 0.0% 100.0% 0.2 0.1% constantPoolOopDesc::string_at_impl
           0.0 0.0% 100.0% 0.0 0.0% convertCapabilityAtrributes
           0.0 0.0% 100.0% 0.0 0.0% convertUft8ToPlatformString
           0.0 0.0% 100.0% 0.0 0.0% createInstrumentationImpl
           0.0 0.0% 100.0% 0.0 0.0% createNewJPLISAgent
           0.0 0.0% 100.0% 0.0 0.0% defaultStream::init_log
           0.0 0.0% 100.0% 0.0 0.0% defaultStream::open_file
           0.0 0.0% 100.0% 0.0 0.0% dlopen@@GLIBC_2.2.5
           0.0 0.0% 100.0% 0.0 0.0% dlopen_doit
           0.0 0.0% 100.0% 0.0 0.0% do_dlopen
           0.0 0.0% 100.0% 0.1 0.0% eventHandlerClassFileLoadHook
           0.0 0.0% 100.0% 0.2 0.1% eventHandlerVMInit
           0.0 0.0% 100.0% 0.0 0.0% fieldDescriptor::string_initial_value
           0.0 0.0% 100.0% 0.0 0.0% fileOpen
           0.0 0.0% 100.0% 0.5 0.2% find_class_from_class_loader
           0.0 0.0% 100.0% 0.3 0.1% frame::oops_interpreted_do
           0.0 0.0% 100.0% 0.0 0.0% getObjectArrayFromClasses
           0.0 0.0% 100.0% 0.0 0.0% get_method_id
           0.0 0.0% 100.0% 0.0 0.0% get_mirror_from_signature
           0.0 0.0% 100.0% 0.0 0.0% gethostbyaddr_r@@GLIBC_2.2.5
           0.0 0.0% 100.0% 0.0 0.0% getnameinfo
           0.0 0.0% 100.0% 0.0 0.0% getpwuid_r@@GLIBC_2.2.5
           0.0 0.0% 100.0% 0.0 0.0% global constructors keyed to codeCache.cpp
           0.0 0.0% 100.0% 0.0 0.0% global constructors keyed to decoder.cpp
           0.0 0.0% 100.0% 0.0 0.0% global constructors keyed to diagnosticFramework.cpp
           0.0 0.0% 100.0% 0.0 0.0% initLocalAddrTable
           0.0 0.0% 100.0% 29.4 9.5% init_globals
           0.0 0.0% 100.0% 0.0 0.0% initializeDirectBufferSupport
           0.0 0.0% 100.0% 0.0 0.0% initializeEncoding
           0.0 0.0% 100.0% 0.0 0.0% initialize_class
           0.0 0.0% 100.0% 0.0 0.0% initialize_static_field
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::add_dependent_nmethod
           0.0 0.0% 100.0% 1.4 0.4% instanceKlass::add_previous_version
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::allocate_objArray
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::array_klass_impl@73e470
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::array_klass_impl@73e620
           0.0 0.0% 100.0% 1.2 0.4% instanceKlass::call_class_initializer
           0.0 0.0% 100.0% 1.3 0.4% instanceKlass::call_class_initializer_impl
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::do_local_static_fields
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::do_local_static_fields_impl
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::get_jmethod_id
           0.0 0.0% 100.0% 1.2 0.4% instanceKlass::initialize
           0.0 0.0% 100.0% 1.3 0.4% instanceKlass::initialize_impl
           0.0 0.0% 100.0% 0.7 0.2% instanceKlass::itable
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::link_class
           0.0 0.0% 100.0% 0.1 0.0% instanceKlass::link_class_impl
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::link_class_or_fail
           0.0 0.0% 100.0% 0.3 0.1% instanceKlass::mask_for
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::register_finalizer
           0.0 0.0% 100.0% 0.0 0.0% instanceKlass::relocate_and_link_methods
           0.0 0.0% 100.0% 0.4 0.1% instanceKlass::vtable
           0.0 0.0% 100.0% 1.1 0.3% instanceKlassKlass::oop_follow_contents
           0.0 0.0% 100.0% 0.1 0.0% instanceKlassKlass::oop_update_pointers
           0.0 0.0% 100.0% 0.0 0.0% interpreter_init
           0.0 0.0% 100.0% 0.2 0.1% invokeJavaAgentMainMethod
           0.0 0.0% 100.0% 0.0 0.0% isAssignableTo
           0.0 0.0% 100.0% 0.0 0.0% java_lang_Class::create_mirror
           0.0 0.0% 100.0% 0.0 0.0% java_lang_String::create_from_platform_dependent_str
           0.0 0.0% 100.0% 0.0 0.0% java_lang_reflect_Field::create
           0.0 0.0% 100.0% 170.0 55.1% java_start
           0.0 0.0% 100.0% 0.0 0.0% jmm_GetMemoryManagers
           0.0 0.0% 100.0% 0.0 0.0% jmm_GetMemoryPoolUsage
           0.0 0.0% 100.0% 0.0 0.0% jmm_GetMemoryPools
           0.0 0.0% 100.0% 0.1 0.0% jni_CallObjectMethod
           0.0 0.0% 100.0% 0.0 0.0% jni_CallStaticObjectMethod
           0.0 0.0% 100.0% 0.0 0.0% jni_CallStaticObjectMethodV
           0.0 0.0% 100.0% 0.4 0.1% jni_CallStaticVoidMethod
           0.0 0.0% 100.0% 0.2 0.1% jni_CallVoidMethod
           0.0 0.0% 100.0% 0.0 0.0% jni_FindClass
           0.0 0.0% 100.0% 101.5 32.9% jni_GetByteArrayElements
           0.0 0.0% 100.0% 0.0 0.0% jni_GetMethodID
           0.0 0.0% 100.0% 0.0 0.0% jni_GetStaticMethodID
           0.0 0.0% 100.0% 0.0 0.0% jni_NewDirectByteBuffer
           0.0 0.0% 100.0% 0.0 0.0% jni_NewObject
           0.0 0.0% 100.0% 0.0 0.0% jni_NewObjectArray
           0.0 0.0% 100.0% 0.0 0.0% jni_NewObjectV
           0.0 0.0% 100.0% 0.0 0.0% jni_RegisterNatives
           0.0 0.0% 100.0% 0.4 0.1% jni_invoke_nonstatic
           0.0 0.0% 100.0% 21.1 6.8% jni_invoke_static
           0.0 0.0% 100.0% 98.5 31.9% jvm_define_class_common
           0.0 0.0% 100.0% 0.0 0.0% jvmti_AddToBootstrapClassLoaderSearch
           0.0 0.0% 100.0% 0.0 0.0% jvmti_GetClassLoaderClasses
           0.0 0.0% 100.0% 0.1 0.0% jvmti_GetLoadedClasses
           0.0 0.0% 100.0% 59.2 19.2% jvmti_RedefineClasses
           0.0 0.0% 100.0% 0.0 0.0% jvmti_SetThreadLocalStorage
           0.0 0.0% 100.0% 0.1 0.0% klassKlass::oop_follow_contents
           0.0 0.0% 100.0% 0.0 0.0% klassVtable::initialize_vtable
           0.0 0.0% 100.0% 0.0 0.0% klassVtable::update_inherited_vtable
           0.0 0.0% 100.0% 0.1 0.0% load_class_global
           0.0 0.0% 100.0% 0.1 0.0% load_class_local
           0.0 0.0% 100.0% 0.0 0.0% main
           0.0 0.0% 100.0% 0.0 0.0% management_init
           0.0 0.0% 100.0% 0.0 0.0% merge_fullinfo_types
           0.0 0.0% 100.0% 0.0 0.0% merge_into_one_successor
           0.0 0.0% 100.0% 0.0 0.0% merge_registers
           0.0 0.0% 100.0% 0.1 0.0% methodDataKlass::oop_follow_contents
           0.0 0.0% 100.0% 0.0 0.0% methodOopDesc::load_signature_classes
           0.0 0.0% 100.0% 0.0 0.0% methodOopDesc::make_adapters
           0.0 0.0% 100.0% 0.3 0.1% methodOopDesc::mask_for
           0.0 0.0% 100.0% 0.0 0.0% methodOopDesc::resolved_checked_exceptions_impl
           0.0 0.0% 100.0% 0.0 0.0% mutex_init
           0.0 0.0% 100.0% 0.0 0.0% nmethod::add_handler_for_exception_and_pc
           0.0 0.0% 100.0% 0.0 0.0% nmethod::new_native_nmethod
           0.0 0.0% 100.0% 0.7 0.2% nmethod::new_nmethod
           0.0 0.0% 100.0% 0.7 0.2% nmethod::nmethod
           0.0 0.0% 100.0% 0.0 0.0% objArrayKlass::array_klass_impl@a2aff0
           0.0 0.0% 100.0% 0.0 0.0% objArrayKlass::array_klass_impl@a2b510
           0.0 0.0% 100.0% 0.0 0.0% objArrayKlassKlass::allocate_objArray_klass
           0.0 0.0% 100.0% 0.0 0.0% objArrayKlassKlass::allocate_objArray_klass_impl
           0.0 0.0% 100.0% 0.0 0.0% objArrayKlassKlass::oop_follow_contents
           0.0 0.0% 100.0% 0.0 0.0% object_fullinfo_to_classclass
           0.0 0.0% 100.0% 0.0 0.0% oopFactory::new_objArray
           0.0 0.0% 100.0% 0.0 0.0% openaux
           0.0 0.0% 100.0% 0.0 0.0% os::Linux::clock_init
           0.0 0.0% 100.0% 0.0 0.0% os::create_attached_thread
           0.0 0.0% 100.0% 0.0 0.0% os::create_thread
           0.0 0.0% 100.0% 0.0 0.0% os::dll_load
           0.0 0.0% 100.0% 0.0 0.0% os::format_boot_path
           0.0 0.0% 100.0% 0.0 0.0% os::init
           0.0 0.0% 100.0% 0.0 0.0% os::init_2
           0.0 0.0% 100.0% 0.0 0.0% os::init_system_properties_values
           0.0 0.0% 100.0% 0.0 0.0% os::native_java_library
           0.0 0.0% 100.0% 0.0 0.0% os::set_boot_path
           0.0 0.0% 100.0% 0.0 0.0% os::signal_init
           0.0 0.0% 100.0% 2.5 0.8% os::strdup
           0.0 0.0% 100.0% 0.0 0.0% pop_stack
           0.0 0.0% 100.0% 0.2 0.1% processJavaStart
           0.0 0.0% 100.0% 0.0 0.0% pthread_create@@GLIBC_2.2.5
           0.0 0.0% 100.0% 0.0 0.0% putenv
           0.0 0.0% 100.0% 160.7 52.0% redefineClasses
           0.0 0.0% 100.0% 0.0 0.0% retransformableEnvironment
           0.0 0.0% 100.0% 0.0 0.0% run_dataflow
           0.0 0.0% 100.0% 0.0 0.0% setPathEnvironment
           0.0 0.0% 100.0% 0.0 0.0% set_property
           0.0 0.0% 100.0% 0.0 0.0% setlocale
           0.0 0.0% 100.0% 0.0 0.0% signal_thread_entry
           0.0 0.0% 100.0% 0.2 0.1% startJavaAgent
           0.0 0.0% 100.0% 199.9 64.7% start_thread
           0.0 0.0% 100.0% 161.9 52.4% thread_entry
           0.0 0.0% 100.0% 0.1 0.0% transformClassFile
           0.0 0.0% 100.0% 0.0 0.0% tryToAcquireReentrancyToken
           0.0 0.0% 100.0% 0.0 0.0% typeArrayHandle::typeArrayHandle
           0.0 0.0% 100.0% 0.0 0.0% typeArrayKlass::create_klass
           0.0 0.0% 100.0% 0.0 0.0% tzset
           0.0 0.0% 100.0% 0.0 0.0% tzset_internal
           0.0 0.0% 100.0% 0.8 0.2% universe2_init
           0.0 0.0% 100.0% 0.4 0.1% universe_init
           0.0 0.0% 100.0% 28.2 9.1% universe_post_init
           0.0 0.0% 100.0% 0.0 0.0% verify_method
           0.0 0.0% 100.0% 0.0 0.0% vframeArray::allocate
           0.0 0.0% 100.0% 0.1 0.0% vmSymbols::initialize
           0.0 0.0% 100.0% 0.0 0.0% vm_init_globals


      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
      package agent.loader;

      import java.lang.instrument.ClassFileTransformer;
      import java.lang.instrument.IllegalClassFormatException;
      import java.security.ProtectionDomain;

      public class PreClassTransformer implements ClassFileTransformer {
          public PreClassTransformer() {
           super();
          }

          /**
           * Transform the class at loading stage
           */
          public byte[] transform(ClassLoader loader, String className, Class classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) throws
      IllegalClassFormatException {
      byte[] cloneClassBytes = new byte[classfileBuffer.length];
      System.arrayCopy(classBytes,0,cloneClassBytes,0,classBytes.length);
              return cloneClassBytes;
          }
      }

      package agent.loader;

      import java.lang.instrument.Instrumentation;

      public abstract class AbstractClassRetransformer {
          private String name;

          public AbstractClassRetransformer(String name) {
              this.name = name;
          }
          
          public void retransformClass(Instrumentation instrumentation, Class<?> retransformClass) {
              try {
                  instrumentation.retransformClasses(retransformClass);
              } catch (Throwable ex) {
                  ; log the errors
              }
          }
      }
      ---------- END SOURCE ----------

            fmatte Fairoz Matte
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: