<html>
    <head>
      <base href="http://icedtea.classpath.org/bugzilla/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>P3
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - JogAmp JOGL angelesgl2es1 applet fails to initialize using Hotspot"
   href="http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1218">1218</a>
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>aph&#64;redhat.com, unassigned&#64;icedtea.classpath.org
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>gnu.andrew&#64;redhat.com
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>JogAmp JOGL angelesgl2es1 applet fails to initialize using Hotspot
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>xerxes&#64;zafena.se
          </td>
        </tr>

        <tr>
          <th>URL</th>
          <td>http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>32-bit
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>2.3.2
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>IcedTea
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>IcedTea
          </td>
        </tr></table>
      <p>
        <div>
        <pre>This is a fully reproducible bug:
The
<a href="http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html">http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html</a>
applet fails to initialize when using Hotspot, it runs fine using JamVM thus i
belive the root cause is inside the OpenJDK Hotspot JVM.
Tested on two different systems A and B with the same outcome thus I think we
can rule out bugs in IcedTea-web and the ARM Thumb2 JIT, see below:

Testcase:
chromium-browser
<a href="http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html">http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html</a>
or
firefox
<a href="http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html">http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html</a>

System A:
OS: Ubuntu 12.10 32bit armhf
Machine: Toshiba AC100-10D
IcedTea-Version: 1.3
OpenJDK Runtime Environment (IcedTea7 2.3.2) (7u7-2.3.2a-1ubuntu1)
Chromium: 22.0.1229.94 (Developer Build 161065) Ubuntu 12.10

Runs OK using jamvm:
chromium-browser
<a href="http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html">http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html</a>
...
java version &quot;1.7.0_07&quot;
OpenJDK Runtime Environment (IcedTea7 2.3.2) (7u7-2.3.2a-1ubuntu1)
JamVM (build 1.6.0-devel, inline-threaded interpreter with stack-caching)
Unable to use Firefox's proxy settings. Using &quot;DIRECT&quot; as proxy type.
NvRmPrivGetChipIdStub: Could not read Tegra chip id/rev 
Expected on kernels without Tegra3 support, using Tegra2
Loading GLESv2lib libGLESv2.so.2
Library for API 1 exposes function not wrapped: glPointSizePointerOES
class demos.es1.angeles.AngelesGL has no 'window' field
class demos.es1.angeles.AngelesGL has no 'glWindow' field
AngelesGL: jogamp.opengl.es1.GLES1Impl&#64;41679930
33 s: 300 f / 33790 ms, 8.8 fps, 112 ms/f; total: 300 f, 8.8 fps, 112 ms/f
66 s: 300 f / 32722 ms, 9.1 fps, 109 ms/f; total: 600 f, 9.0 fps, 110 ms/f
98 s: 300 f / 32422 ms, 9.2 fps, 108 ms/f; total: 900 f, 9.0 fps, 109 ms/f
111 s: 300 f / 12335 ms, 24.3 fps, 41 ms/f; total: 1200 f, 10.7 fps, 92 ms/f
117 s: 300 f / 5818 ms, 51.5 fps, 19 ms/f; total: 1500 f, 12.8 fps, 78 ms/f

Fails using Hotspot (armhf thumb2 jit):
chromium-browser
<a href="http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html">http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html</a>
java version &quot;1.7.0_07&quot;
OpenJDK Runtime Environment (IcedTea7 2.3.2) (7u7-2.3.2a-1ubuntu1)
OpenJDK Zero VM (build 22.0-b10, mixed mode)
Unable to use Firefox's proxy settings. Using &quot;DIRECT&quot; as proxy type.
[12:12:7511309852:ERROR:nss_util.cc(452)] Error initializing NSS without a
persistent database: libsoftokn3.so: cannot open shared object file: Permission
denied
Exception in thread &quot;Applet&quot; java.lang.ExceptionInInitializerError
        at
com.jogamp.common.util.PropertyAccess.addTrustedPrefix(PropertyAccess.java:52)
        at jogamp.newt.Debug.&lt;clinit&gt;(Debug.java:52)
        at
com.jogamp.newt.awt.applet.JOGLNewtAppletBase.&lt;clinit&gt;(JOGLNewtAppletBase.java:58)
        at
com.jogamp.newt.awt.applet.JOGLNewtApplet1Run.&lt;clinit&gt;(JOGLNewtApplet1Run.java:95)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
        at java.lang.Class.newInstance0(Class.java:372)
        at java.lang.Class.newInstance(Class.java:325)
        at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:726)
        at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:676)
        at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:886)
Caused by: java.security.AccessControlException: access denied
(&quot;java.lang.RuntimePermission&quot; &quot;getProtectionDomain&quot;)
        at
java.security.AccessControlContext.checkPermission(AccessControlContext.java:366)
        at
java.security.AccessController.checkPermission(AccessController.java:555)
        at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
        at
net.sourceforge.jnlp.runtime.JNLPSecurityManager.checkPermission(JNLPSecurityManager.java:284)
        at java.lang.Class.getProtectionDomain(Class.java:2123)
        at com.jogamp.common.util.SecurityUtil$2.run(SecurityUtil.java:52)
        at com.jogamp.common.util.SecurityUtil$2.run(SecurityUtil.java:50)
        at java.security.AccessController.doPrivileged(Native Method)
        at com.jogamp.common.util.SecurityUtil.getCerts(SecurityUtil.java:50)
        at com.jogamp.common.util.SecurityUtil.&lt;clinit&gt;(SecurityUtil.java:46)
        ... 13 more
java.lang.NullPointerException
        at net.sourceforge.jnlp.NetxPanel.runLoader(NetxPanel.java:154)
        at sun.applet.AppletPanel.run(AppletPanel.java:379)
        at java.lang.Thread.run(Thread.java:722)
java.lang.NullPointerException
        at sun.applet.AppletPanel.run(AppletPanel.java:429)
        at java.lang.Thread.run(Thread.java:722)
[16:16:7512497608:ERROR:nss_util.cc(452)] Error initializing NSS without a
persistent database: libsoftokn3.so: cannot open shared object file: Permission
denied
[20:20:7513434520:ERROR:nss_util.cc(452)] Error initializing NSS without a
persistent database: libsoftokn3.so: cannot open shared object file: Permission
denied



System B:
Ubuntu 12.04 32bit IA32
Machine: Fujitsu ESPRIMO-P7935
IcedTea-Web Plugin (using IcedTea-Web 1.2 (1.2-2ubuntu1.2))
OpenJDK Runtime Environment (IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~12.04.1)
Firefox 16.0.2

Runs OK using jamvm:
firefox
<a href="http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html">http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html</a>
java version &quot;1.6.0_24&quot;
OpenJDK Runtime Environment (IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~12.04.1)
JamVM (build 1.6.0-devel, inline-threaded interpreter with stack-caching)
libEGL warning: failed to create a pipe screen for i965
class demos.es1.angeles.AngelesGL has no 'window' field
class demos.es1.angeles.AngelesGL has no 'glWindow' field
AngelesGL: jogamp.opengl.gl4.GL4bcImpl&#64;99a96018
4 s: 300 f / 4990 ms, 60.1 fps, 16 ms/f; total: 300 f, 60.1 fps, 16 ms/f

Fails using Hotspot:
firefox
<a href="http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html">http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html</a>
java version &quot;1.6.0_24&quot;
OpenJDK Runtime Environment (IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~12.04.1)
OpenJDK Server VM (build 20.0-b12, mixed mode)
Exception in thread &quot;Applet&quot; java.lang.ExceptionInInitializerError
    at
com.jogamp.common.util.PropertyAccess.addTrustedPrefix(PropertyAccess.java:52)
    at jogamp.newt.Debug.&lt;clinit&gt;(Debug.java:52)
    at
com.jogamp.newt.awt.applet.JOGLNewtAppletBase.&lt;clinit&gt;(JOGLNewtAppletBase.java:58)
    at
com.jogamp.newt.awt.applet.JOGLNewtApplet1Run.&lt;clinit&gt;(JOGLNewtApplet1Run.java:95)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
    at java.lang.Class.newInstance0(Class.java:372)
    at java.lang.Class.newInstance(Class.java:325)
    at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:726)
    at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:676)
    at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:886)
Caused by: java.security.AccessControlException: access denied
(java.lang.RuntimePermission getProtectionDomain)
    at
java.security.AccessControlContext.checkPermission(AccessControlContext.java:393)
    at
java.security.AccessController.checkPermission(AccessController.java:558)
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
    at
net.sourceforge.jnlp.runtime.JNLPSecurityManager.checkPermission(JNLPSecurityManager.java:284)
    at java.lang.Class.getProtectionDomain(Class.java:2123)
    at com.jogamp.common.util.SecurityUtil$2.run(SecurityUtil.java:52)
    at com.jogamp.common.util.SecurityUtil$2.run(SecurityUtil.java:50)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.jogamp.common.util.SecurityUtil.getCerts(SecurityUtil.java:50)
    at com.jogamp.common.util.SecurityUtil.&lt;clinit&gt;(SecurityUtil.java:46)
    ... 13 more
java.lang.NullPointerException
    at net.sourceforge.jnlp.NetxPanel.runLoader(NetxPanel.java:154)
    at sun.applet.AppletPanel.run(AppletPanel.java:380)
    at java.lang.Thread.run(Thread.java:679)
java.lang.NullPointerException
    at sun.applet.AppletPanel.run(AppletPanel.java:430)
    at java.lang.Thread.run(Thread.java:679)</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>