Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6597884
Votes 0
Synopsis "java -XX:+PrintSafepointStatistics -version" crashes
Category hotspot:runtime_system
Reported Against
Release Fixed hs11(b06), 6u10(b09) (Bug ID:2172484) , 7(b20) (Bug ID:2177040)
State 10-Fix Delivered, bug
Priority: 3-Medium
Related Bugs
Submit Date 28-AUG-2007
Description
HotSpot Version : 20070823090516.dcubed.service_hs_b19_merge.2-fastdebug
Flags : -XX:+PrintSafepointStatistics

Using +PrintSafepointStatistics is causing an assert. It even fails w/ '-version. '

---------------------------------------------------------------------------
bash-3.00# /usr/j2se/bin/java -server  -XX:+PrintSafepointStatistics -version 
VM option '+PrintSafepointStatistics'
     vmop_name               [threads: total initially_running wait_to_block] [time: spin block sync] [vmop_time  time_elapsed] page_trap_count
java version "1.7.0-ea"
Java(TM) SE Runtime Environment (build 1.7.0-ea-b16)
Java HotSpot(TM) Server VM (build 20070823090516.dcubed.service_hs_b19_merge.2-fastdebug, mixed mode)
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/thread.hpp:563
#
# An unexpected error has been detected by Java Runtime Environment:
#
#  Internal Error (/net/prt-sol-x86-1/tmp/PrtBuildDir/workspace/src/share/vm/runtime/thread.hpp:563), pid=27302, tid=2
#  Error: assert(thread != 0,"just checking")
#
# Java VM: Java HotSpot(TM) Server VM (20070823090516.dcubed.service_hs_b19_merge.2-fastdebug mixed mode solaris-x86)
# An error report file with more information is saved as:
# //hs_err_pid27302.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

[error occurred during error reporting , id 0xe0000000] 
---------------------------------------------------------------------------
here is the backtrace :

(dbx) where
current thread:   xxxxx@xxxxx  
dbx: read of 8 bytes at address be0aa000 failed -- No such file or directory
dbx: attempt to read frame failed -- cannot derive frame pointer
  [1] _read(0x0, 0xbe0a9c90, 0x10), at 0xbff30b27
  [2] read(0x0, 0xbe0a9c90, 0x10), at 0xbff242a6
  [3] os::message_box(0xbfb86602, 0xbfcc0b18), at 0xbecea3f4
  [4] VMError::show_message_box(0xbe0a9dbc, 0xbfcc0b18, 0x7d0), at 0xbef7fd2c
  [5] VMError::report_and_die(0xbe0a9dbc), at 0xbef7f4b5
  [6] report_assertion_failure(0xbfa448e3, 0x233, 0xbfa448bf), at 0xbe6f7a57
  [7] SafepointSynchronize::print_stat_on_exit(0xbfc15170, 0xbfc7e8ac, 0xbe0a9ebc, 0xbee9c5b5, 0xbe0a9ebc, 0xbee9c5bd), at 0xbedcc5f8
  [8] exit_globals(0xbfc98a48, 0x8085c00, 0xbfc15170, 0x1, 0xbe8f7345, 0xbe0a9ed4), at 0xbe7e3486
  [9] Threads::destroy_vm(0x0, 0x0, 0x806a39c, 0xbfc85b10, 0x10006, 0xbf52161d), at 0xbee9c5bd
  [10] jni_DestroyJavaVM(0xbfc85088), at 0xbe8f5dc1
  [11] JavaMain(0x8047d58), at 0x80532c6
  [12] _thr_setup(0xbff72400), at 0xbff2fd36
=>[13] _lwp_start(), at 0xbff30020
  [14] 0x0(), at 0xffffffffffffffff
(dbx) 
---------------------------------------------------------------------------
Posted Date : 2007-08-28 00:33:26.0
Work Around
N/A
Evaluation
A better synopsis of this bug is "java -XX:+PrintSafepointStatistics -version" crashes. Due to the dual exit path of VM, the safepoint statistics printing code could be called either from VMThread or other threads calling DestroyJavaVM using JNI. The current implementation assumes the caller is VMThread which is obviously wrong in some cases.

The fix is to remove the assert check.
Posted Date : 2007-08-28 05:19:48.0
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang