openjdk team mailing list archive
-
openjdk team
-
Mailing list archive
-
Message #08774
[Bug 1078706] [NEW] JogAmp JOGL angelesgl2es1 applet fails to initialize using Hotspot
Public bug reported:
http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1218
This is a fully reproducible bug:
The http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html 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 http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
or
firefox http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
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 http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
...
java version "1.7.0_07"
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 "DIRECT" 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@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 http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
java version "1.7.0_07"
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 "DIRECT" 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 "Applet" java.lang.ExceptionInInitializerError
at com.jogamp.common.util.PropertyAccess.addTrustedPrefix(PropertyAccess.java:52)
at jogamp.newt.Debug.<clinit>(Debug.java:52)
at com.jogamp.newt.awt.applet.JOGLNewtAppletBase.<clinit>(JOGLNewtAppletBase.java:58)
at com.jogamp.newt.awt.applet.JOGLNewtApplet1Run.<clinit>(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 ("java.lang.RuntimePermission" "getProtectionDomain")
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.<clinit>(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 http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
java version "1.6.0_24"
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@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 http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
java version "1.6.0_24"
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 "Applet" java.lang.ExceptionInInitializerError
at com.jogamp.common.util.PropertyAccess.addTrustedPrefix(PropertyAccess.java:52)
at jogamp.newt.Debug.<clinit>(Debug.java:52)
at com.jogamp.newt.awt.applet.JOGLNewtAppletBase.<clinit>(JOGLNewtAppletBase.java:58)
at com.jogamp.newt.awt.applet.JOGLNewtApplet1Run.<clinit>(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.<clinit>(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)
** Affects: openjdk
Importance: Unknown
Status: Unknown
** Affects: openjdk-6 (Ubuntu)
Importance: Undecided
Status: New
** Affects: openjdk-7 (Ubuntu)
Importance: Undecided
Status: New
** Bug watch added: Iced Tea Bugzilla #1218
http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1218
** Also affects: openjdk via
http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1218
Importance: Unknown
Status: Unknown
** Also affects: openjdk-6 (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of OpenJDK,
which is subscribed to openjdk-7 in Ubuntu.
https://bugs.launchpad.net/bugs/1078706
Title:
JogAmp JOGL angelesgl2es1 applet fails to initialize using Hotspot
Status in OpenJDK:
Unknown
Status in “openjdk-6” package in Ubuntu:
New
Status in “openjdk-7” package in Ubuntu:
New
Bug description:
http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1218
This is a fully reproducible bug:
The http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html 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 http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
or
firefox http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
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 http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
...
java version "1.7.0_07"
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 "DIRECT" 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@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 http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
java version "1.7.0_07"
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 "DIRECT" 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 "Applet" java.lang.ExceptionInInitializerError
at com.jogamp.common.util.PropertyAccess.addTrustedPrefix(PropertyAccess.java:52)
at jogamp.newt.Debug.<clinit>(Debug.java:52)
at com.jogamp.newt.awt.applet.JOGLNewtAppletBase.<clinit>(JOGLNewtAppletBase.java:58)
at com.jogamp.newt.awt.applet.JOGLNewtApplet1Run.<clinit>(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 ("java.lang.RuntimePermission" "getProtectionDomain")
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.<clinit>(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 http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
java version "1.6.0_24"
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@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 http://jogamp.org/deployment/jogamp-current/jogl-demos/jogl-newt-applet-runner-angelesgl2es1.html
java version "1.6.0_24"
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 "Applet" java.lang.ExceptionInInitializerError
at com.jogamp.common.util.PropertyAccess.addTrustedPrefix(PropertyAccess.java:52)
at jogamp.newt.Debug.<clinit>(Debug.java:52)
at com.jogamp.newt.awt.applet.JOGLNewtAppletBase.<clinit>(JOGLNewtAppletBase.java:58)
at com.jogamp.newt.awt.applet.JOGLNewtApplet1Run.<clinit>(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.<clinit>(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)
To manage notifications about this bug go to:
https://bugs.launchpad.net/openjdk/+bug/1078706/+subscriptions
Follow ups
References