1394 const char *msg2 = "Try increasing the code cache size using -XX:ReservedCodeCacheSize=";
1395
1396 log_warning(codecache)("%s", msg1);
1397 log_warning(codecache)("%s", msg2);
1398 warning("%s", msg1);
1399 warning("%s", msg2);
1400 }
1401 ResourceMark rm;
1402 stringStream s;
1403 // Dump code cache into a buffer before locking the tty.
1404 {
1405 MutexLockerEx mu(CodeCache_lock, Mutex::_no_safepoint_check_flag);
1406 print_summary(&s);
1407 }
1408 {
1409 ttyLocker ttyl;
1410 tty->print("%s", s.as_string());
1411 }
1412
1413 if (heap->full_count() == 0) {
1414 LogTarget(Debug, codecache) lt;
1415 if (lt.is_enabled()) {
1416 CompileBroker::print_heapinfo(tty, "all", "4096"); // details, may be a lot!
1417 }
1418 }
1419 }
1420
1421 heap->report_full();
1422
1423 EventCodeCacheFull event;
1424 if (event.should_commit()) {
1425 event.set_codeBlobType((u1)code_blob_type);
1426 event.set_startAddress((u8)heap->low_boundary());
1427 event.set_commitedTopAddress((u8)heap->high());
1428 event.set_reservedTopAddress((u8)heap->high_boundary());
1429 event.set_entryCount(heap->blob_count());
1430 event.set_methodCount(heap->nmethod_count());
1431 event.set_adaptorCount(heap->adapter_count());
1432 event.set_unallocatedCapacity(heap->unallocated_capacity());
1433 event.set_fullCount(heap->full_count());
1434 event.commit();
1435 }
|
1394 const char *msg2 = "Try increasing the code cache size using -XX:ReservedCodeCacheSize=";
1395
1396 log_warning(codecache)("%s", msg1);
1397 log_warning(codecache)("%s", msg2);
1398 warning("%s", msg1);
1399 warning("%s", msg2);
1400 }
1401 ResourceMark rm;
1402 stringStream s;
1403 // Dump code cache into a buffer before locking the tty.
1404 {
1405 MutexLockerEx mu(CodeCache_lock, Mutex::_no_safepoint_check_flag);
1406 print_summary(&s);
1407 }
1408 {
1409 ttyLocker ttyl;
1410 tty->print("%s", s.as_string());
1411 }
1412
1413 if (heap->full_count() == 0) {
1414 if (PrintCodeHeapAnalysis) {
1415 CompileBroker::print_heapinfo(tty, "all", "4096"); // details, may be a lot!
1416 }
1417 }
1418 }
1419
1420 heap->report_full();
1421
1422 EventCodeCacheFull event;
1423 if (event.should_commit()) {
1424 event.set_codeBlobType((u1)code_blob_type);
1425 event.set_startAddress((u8)heap->low_boundary());
1426 event.set_commitedTopAddress((u8)heap->high());
1427 event.set_reservedTopAddress((u8)heap->high_boundary());
1428 event.set_entryCount(heap->blob_count());
1429 event.set_methodCount(heap->nmethod_count());
1430 event.set_adaptorCount(heap->adapter_count());
1431 event.set_unallocatedCapacity(heap->unallocated_capacity());
1432 event.set_fullCount(heap->full_count());
1433 event.commit();
1434 }
|