<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
"gamma" is an internal launcher to test the VM after the build is done.
It is similar to java but statically linked to libjvm.so. It locates
rt.jar and other jar files from JAVA_HOME environment variable as part
of the start up. And the crash you saw is occurring when VM tries to
load classes out of jar files and the JDK zip code tries to call back
to VM, most likely calling some JVM_XXX methods. So your JNI
modification might affect the correctness of the JNI call from zip code
to VM code.<br>
<br>
-Xiaobin<br>
<br>
On 02/16/09 13:12, Colin(Du Li) wrote:
<blockquote cite="mid:22046005.post@talk.nabble.com" type="cite">
  <pre wrap="">I know this error probably caused by some modification I made in JNI part,
but I'm just wondering why it occurs when making.


Colin(Du Li) wrote:
  </pre>
  <blockquote type="cite">
    <pre wrap="">Sure.
The error message follows:
make[3]: Leaving directory
`/home/dli/Hotspot/openjdk_b24/jdk7/build/openjdk7_full_debug/linux_i486_compiler2/jvmg'
cd linux_i486_compiler2/jvmg &amp;&amp; ./test_gamma
java version "1.7.0"
IcedTea Runtime Environment (build 1.7.0-b21)
OpenJDK Server VM (build 12.0-b01-internal-jvmg, interpreted mode)

#
#
# An unexpected error has been detected by Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x06357924, pid=20401, tid=3086755536
#
# Java VM: OpenJDK Server VM (12.0-b01-internal-jvmg interpreted mode
linux-x86)
# Problematic frame:
# V  [libjvm.so+0x357924]

The log follows:
Stack: [0xbf885000,0xbf8d5000],  sp=0xbf8d1d90,  free space=307k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native
code)
V  [libjvm.so+0x357924]
V  [libjvm.so+0x50e3a9]
C  [libzip.so+0x2716]  Java_java_util_zip_Inflater_inflateBytes+0xe6
j  java.util.zip.Inflater.inflateBytes([BII)I+0
j  java.util.zip.Inflater.inflate([BII)I+40
j  java.util.zip.InflaterInputStream.read([BII)I+53
j  java.io.DataInputStream.readFully([BII)V+34
j  java.util.jar.JarFile.hasClassPathAttribute()Z+59

java.util.jar.JavaUtilJarAccessImpl.jarFileHasClassPathAttribute(Ljava/util/jar/JarFile;)Z+1
j  sun.misc.URLClassPath$JarLoader.getClassPath()[Ljava/net/URL;+33
j  sun.misc.URLClassPath.getLoader(I)Lsun/misc/URLClassPath$Loader;+78

sun.misc.URLClassPath.getResource(Ljava/lang/String;Z)Lsun/misc/Resource;+42
j  java.net.URLClassLoader$1.run()Ljava/lang/Object;+26
v  ~StubRoutines::call_stub
V  [libjvm.so+0x4fb11a]
V  [libjvm.so+0x6a9c57]
V  [libjvm.so+0x4f9f97]
V  [libjvm.so+0x5755bc]
C  [libjava.so+0x9eea] 
Java_java_security_AccessController_doPrivileged__Ljava_security_PrivilegedExceptionAction_2Ljava_security_AccessControlContext_2+0x3a

java.security.AccessController.doPrivileged(Ljava/security/PrivilegedExceptionAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;+0

java.net.URLClassLoader.findClass(Ljava/lang/String;)Ljava/lang/Class;+13

java.lang.ClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class;+43

java.lang.ClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class;+23

sun.misc.Launcher$AppClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class;+36
j  java.lang.ClassLoader.loadClass(Ljava/lang/String;)Ljava/lang/Class;+3

java.lang.ClassLoader.loadClassInternal(Ljava/lang/String;)Ljava/lang/Class;+2
v  ~StubRoutines::call_stub
V  [libjvm.so+0x4fb11a]
V  [libjvm.so+0x6a9c57]
V  [libjvm.so+0x4f9f97]
V  [libjvm.so+0x4fa232]
V  [libjvm.so+0x4fa311]
V  [libjvm.so+0x78b3be]
V  [libjvm.so+0x78bf2a]
V  [libjvm.so+0x78c7a3]
V  [libjvm.so+0x78c805]
V  [libjvm.so+0x557eff]
V  [libjvm.so+0x52eb67]
C  [gamma+0x2b22]
C  [gamma+0x15e0]  main+0x68c
C  [libc.so.6+0x16390]  __libc_start_main+0xe0

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  java.util.zip.Inflater.inflateBytes([BII)I+0
j  java.util.zip.Inflater.inflate([BII)I+40
j  java.util.zip.InflaterInputStream.read([BII)I+53
j  java.io.DataInputStream.readFully([BII)V+34
j  java.util.jar.JarFile.hasClassPathAttribute()Z+59

java.util.jar.JavaUtilJarAccessImpl.jarFileHasClassPathAttribute(Ljava/util/jar/JarFile;)Z+1
j  sun.misc.URLClassPath$JarLoader.getClassPath()[Ljava/net/URL;+33
j  sun.misc.URLClassPath.getLoader(I)Lsun/misc/URLClassPath$Loader;+78

sun.misc.URLClassPath.getResource(Ljava/lang/String;Z)Lsun/misc/Resource;+42
j  java.net.URLClassLoader$1.run()Ljava/lang/Object;+26
v  ~StubRoutines::call_stub

java.security.AccessController.doPrivileged(Ljava/security/PrivilegedExceptionAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;+0

java.net.URLClassLoader.findClass(Ljava/lang/String;)Ljava/lang/Class;+13

java.lang.ClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class;+43

java.lang.ClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class;+23

sun.misc.Launcher$AppClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class;+36
j  java.lang.ClassLoader.loadClass(Ljava/lang/String;)Ljava/lang/Class;+3

java.lang.ClassLoader.loadClassInternal(Ljava/lang/String;)Ljava/lang/Class;+2
v  ~StubRoutines::call_stub



Christian.Thalinger wrote:
    </pre>
    <blockquote type="cite">
      <pre wrap="">On Mon, 2009-02-16 at 08:21 -0800, Colin(Du Li) wrote:
      </pre>
      <blockquote type="cite">
        <pre wrap="">Hi, guys,

Now I encounter a wield error when I make hotspot. 
When I make Hotspot, it will run test_gamma at the end of making
process´╝î
then there is a error.
But after that, if I manually run test_gamma at directory ../jvmg, there
is
no error.
Why?
        </pre>
      </blockquote>
      <pre wrap="">Could you post the error?

-- Christian



      </pre>
    </blockquote>
    <pre wrap="">
    </pre>
  </blockquote>
  <pre wrap=""><!---->
  </pre>
</blockquote>
<br>
</body>
</html>