JVM Crash in Java2D Disposer

Solution Verified - Updated

Environment

  • OpenJDK 6 and 7

Issue

  • JVM Crash in Java2D Disposer

Resolution

Diagnostic Steps

  • Obtained the hs_err_<pid> file generated by the JVM crash and analyzed it. We can see the following details initially:
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00002aaaab868014, pid=29893, tid=1676474688
#
# JRE version: 6.0_20-b20
# Java VM: OpenJDK 64-Bit Server VM (19.0-b09 mixed mode linux-amd64 compressed oops)
# Derivative: IcedTea6 1.9.10
# Distribution: Red Hat Enterprise Linux Server release 5.7 (Tikanga), package rhel-1.23.1.9.10.el5_7-x86_64
# Problematic frame:
# J  java.lang.String.getBytes(Ljava/lang/String;)[B
#
# If you would like to submit a bug report, please include
# instructions how to reproduce the bug and visit:
#   http://icedtea.classpath.org/bugzilla
#

---------------  T H R E A D  ---------------

Current thread (0x00002aaac5560800):  JavaThread "Java2D Disposer" daemon [_thread_in_Java, id=30822, stack(0x0000000063dcf000,0x0000000063ed0000)]
[...]
  • The stack is listed below:
Stack: [0x0000000063dcf000,0x0000000063ed0000],  sp=0x0000000063ece2d0,  free space=1020k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
J  java.lang.String.getBytes(Ljava/lang/String;)[B
V  [libjvm.so+0x4499af]
V  [libjvm.so+0x448988]
V  [libjvm.so+0x456fda]
V  [libjvm.so+0x47a493]
C  [libjava.so+0x17c90]  JNU_GetStringPlatformChars+0xd0
C  [libfontmanager.so+0xc9d0]
Components
Category

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.