697 // Also see if error occurred during initialization or shutdown
698 if (!Universe::is_fully_initialized()) {
699 st->print(" (not fully initialized)");
700 } else if (VM_Exit::vm_exited()) {
701 st->print(" (shutting down)");
702 } else {
703 st->print(" (normal execution)");
704 }
705 st->cr();
706 st->cr();
707 }
708
709 STEP(180, "(printing owned locks on error)" )
710
711 // mutexes/monitors that currently have an owner
712 if (_verbose) {
713 print_owned_locks_on_error(st);
714 st->cr();
715 }
716
717 STEP(190, "(printing heap information)" )
718
719 if (_verbose && Universe::is_fully_initialized()) {
720 Universe::heap()->print_on_error(st);
721 st->cr();
722
723 st->print_cr("Polling page: " INTPTR_FORMAT, os::get_polling_page());
724 st->cr();
725 }
726
727 STEP(195, "(printing code cache information)" )
728
729 if (_verbose && Universe::is_fully_initialized()) {
730 // print code cache information before vm abort
731 CodeCache::print_summary(st);
732 st->cr();
733 }
734
735 STEP(200, "(printing ring buffers)" )
736
802 st->cr();
803 }
804
805 STEP(260, "(printing memory info)" )
806
807 if (_verbose) {
808 os::print_memory_info(st);
809 st->cr();
810 }
811
812 STEP(270, "(printing internal vm info)" )
813
814 if (_verbose) {
815 st->print_cr("vm_info: %s", Abstract_VM_Version::internal_vm_info_string());
816 st->cr();
817 }
818
819 STEP(280, "(printing date and time)" )
820
821 if (_verbose) {
822 os::print_date_and_time(st);
823 st->cr();
824 }
825
826 #ifndef PRODUCT
827 // print a defined marker to show that error handling finished correctly.
828 STEP(290, "(printing end marker)" )
829
830 if (_verbose) {
831 st->print_cr("END.");
832 }
833 #endif
834
835 END
836
837 # undef BEGIN
838 # undef STEP
839 # undef END
840 }
841
842 VMError* volatile VMError::first_error = NULL;
|
697 // Also see if error occurred during initialization or shutdown
698 if (!Universe::is_fully_initialized()) {
699 st->print(" (not fully initialized)");
700 } else if (VM_Exit::vm_exited()) {
701 st->print(" (shutting down)");
702 } else {
703 st->print(" (normal execution)");
704 }
705 st->cr();
706 st->cr();
707 }
708
709 STEP(180, "(printing owned locks on error)" )
710
711 // mutexes/monitors that currently have an owner
712 if (_verbose) {
713 print_owned_locks_on_error(st);
714 st->cr();
715 }
716
717 STEP(182, "(printing number of OutOfMemoryError and StackOverflow exceptions)")
718
719 if (_verbose && Exceptions::has_exception_counts()) {
720 st->print_cr("OutOfMemory and StackOverflow Exception counts:");
721 Exceptions::print_exception_counts_on_error(st);
722 st->cr();
723 }
724
725 STEP(185, "(printing compressed oops mode")
726
727 if (_verbose && UseCompressedOops) {
728 Universe::print_compressed_oops_mode(st);
729 if (UseCompressedClassPointers) {
730 Metaspace::print_compressed_class_space(st);
731 }
732 st->cr();
733 }
734
735 STEP(190, "(printing heap information)" )
736
737 if (_verbose && Universe::is_fully_initialized()) {
738 Universe::heap()->print_on_error(st);
739 st->cr();
740
741 st->print_cr("Polling page: " INTPTR_FORMAT, os::get_polling_page());
742 st->cr();
743 }
744
745 STEP(195, "(printing code cache information)" )
746
747 if (_verbose && Universe::is_fully_initialized()) {
748 // print code cache information before vm abort
749 CodeCache::print_summary(st);
750 st->cr();
751 }
752
753 STEP(200, "(printing ring buffers)" )
754
820 st->cr();
821 }
822
823 STEP(260, "(printing memory info)" )
824
825 if (_verbose) {
826 os::print_memory_info(st);
827 st->cr();
828 }
829
830 STEP(270, "(printing internal vm info)" )
831
832 if (_verbose) {
833 st->print_cr("vm_info: %s", Abstract_VM_Version::internal_vm_info_string());
834 st->cr();
835 }
836
837 STEP(280, "(printing date and time)" )
838
839 if (_verbose) {
840 os::print_date_and_time(st, buf, sizeof(buf));
841 st->cr();
842 }
843
844 #ifndef PRODUCT
845 // print a defined marker to show that error handling finished correctly.
846 STEP(290, "(printing end marker)" )
847
848 if (_verbose) {
849 st->print_cr("END.");
850 }
851 #endif
852
853 END
854
855 # undef BEGIN
856 # undef STEP
857 # undef END
858 }
859
860 VMError* volatile VMError::first_error = NULL;
|