Testing on Debian 10 Buster with Mesa 18.3.6 and GL_RENDERER 1) AMD ARUBA (DRM 2.50.0 / 4.19.0-5-amd64, LLVM 7.0.1) 2) Mesa DRI Intel(R) Iris 6100 (Broadwell GT3) Reveals freezes after native reparenting via NEWT, which were non-existent on Debian 9 Mesa 13.0.6. It probably is not a DEFECT of JOGL, but a regression with Mesa, however, first we have to support and document this issue in more detail. Freezes occurred in different places according to GL_RENDERER: 1) AMD ARUBA (DRM 2.50.0 / 4.19.0-5-amd64, LLVM 7.0.1) "main" #1 prio=5 os_prio=0 cpu=2114.62ms elapsed=24.73s tid=0x00007fd6d8012800 nid=0x54c0 runnable [0x00007fd6df5e4000] java.lang.Thread.State: RUNNABLE at jogamp.opengl.x11.glx.GLX.dispatch_glXMakeContextCurrent0(Native Method) at jogamp.opengl.x11.glx.GLX.glXMakeContextCurrent(GLX.java:767) at jogamp.opengl.x11.glx.X11GLXContext.glXMakeContextCurrent(X11GLXContext.java:164) at jogamp.opengl.x11.glx.X11GLXContext.makeCurrentImpl(X11GLXContext.java:474) at jogamp.opengl.GLContextImpl.makeCurrentWithinLock(GLContextImpl.java:842) at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:650) at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:588) at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1279) at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1147) at com.jogamp.newt.opengl.GLWindow.display(GLWindow.java:759) at com.jogamp.opengl.test.junit.newt.parenting.TestParenting01dAWT.testGLWindowInvisibleReparentRecreateImpl(TestParenting01dAWT.java:165) at com.jogamp.opengl.test.junit.newt.parenting.TestParenting01dAWT.test01GLWindowReparentRecreateNoPreserve(TestParenting01dAWT.java:94) 2) Mesa DRI Intel(R) Iris 6100 (Broadwell GT3) "main-Display-.x11_:0.0-1-EDT-2" #24 daemon prio=5 os_prio=0 cpu=12.40ms elapsed=19.73s tid=0x00007f0c9c1bb000 nid=0x113f runnable [0x00007f0cacc8b000] java.lang.Thread.State: RUNNABLE at jogamp.opengl.gl4.GL4bcImpl.dispatch_glClear1(Native Method) at jogamp.opengl.gl4.GL4bcImpl.glClear(GL4bcImpl.java:63) at jogamp.opengl.GLDrawableHelper.setViewportAndClear(GLDrawableHelper.java:738) at jogamp.opengl.GLDrawableHelper.reshape(GLDrawableHelper.java:742) at jogamp.opengl.GLAutoDrawableBase$2.run(GLAutoDrawableBase.java:440) at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1293) at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1147) at com.jogamp.newt.opengl.GLWindow.display(GLWindow.java:759) at jogamp.opengl.GLAutoDrawableBase.defaultWindowResizedOp(GLAutoDrawableBase.java:260) at com.jogamp.newt.opengl.GLWindow.access$200(GLWindow.java:119) at com.jogamp.newt.opengl.GLWindow$2.windowResized(GLWindow.java:141) at jogamp.newt.WindowImpl.consumeWindowEvent(WindowImpl.java:4381) at jogamp.newt.WindowImpl.sendWindowEvent(WindowImpl.java:4315) at jogamp.newt.WindowImpl.setVisibleActionImpl(WindowImpl.java:1306) at jogamp.newt.WindowImpl$2.run(WindowImpl.java:1907) at com.jogamp.common.util.RunnableTask.run(RunnableTask.java:143) - locked <0x000000071cb142d0> (a java.lang.Object) at jogamp.newt.DefaultEDTUtil$NEDT.run(DefaultEDTUtil.java:375)
Used test case where freezing occurred is: 'com.jogamp.opengl.test.junit.newt.parenting.TestParenting01dAWT'
Further testing w/ different Mesa 18.3.6 renderer - Software Rendering LIBGL_ALWAYS_SOFTWARE=true -- GL_RENDERER llvmpipe (LLVM 7.0, 128 bits) -- Result: OK (No freeze)
This is now an Annotation, as the bug does not come from JogAmp, but is a regression from Mesa 13.0.6 -> 18.3.6
Workaround in jogamp-scripting 6f2281165da079fe718ed340cb4c6102a45d0ddb for unit tests, i.e.: export LIBGL_ALWAYS_SOFTWARE=true
DEFECT -> ANNOTATION Resolved for us, but we should communicated this issue w/ Mesa and the driver developer if resources and time allows.