JDK-8140315 : sun.awt.UNIXToolkit.load_gtk never returns if SWT_GTK3=0 isn't set
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 8,9
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: linux
  • Submitted: 2015-10-22
  • Updated: 2016-05-30
  • Resolved: 2016-05-30
Related Reports
Duplicate :  
Relates :  
Relates :  
Description
During UI-testing of JMC 6 we run into a problem when loading GTK if we don't disable the usage of GTK3 by means of setting environment variable "SWT_GTK3=0"

We're running this on Oracle Linux 7.1 and the problem occurs when running JMC on top of JDK 9 build 80 and newer.

Thread dump:
2015-10-22 13:00:42
Full thread dump Java HotSpot(TM) 64-Bit Server VM (1.9.0-ea-b80 mixed mode):

"RMI TCP Connection(4)-10.161.190.146" #79 daemon prio=5 os_prio=0 tid=0x00007f365c00b800 nid=0x1482 runnable [0x00007f35e6cc9000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
	at java.net.SocketInputStream.read(SocketInputStream.java:170)
	at java.net.SocketInputStream.read(SocketInputStream.java:141)
	at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
	at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
	- locked <0x00000000eb77d740> (a java.io.BufferedInputStream)
	at java.io.FilterInputStream.read(FilterInputStream.java:83)
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:545)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:821)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:678)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$$Lambda$125/1429990788.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:677)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:746)

"RMI TCP Connection(3)-10.161.190.146" #78 daemon prio=5 os_prio=0 tid=0x00007f365c00a000 nid=0x1481 in Object.wait() [0x00007f35e6dc8000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at com.sun.jmx.remote.internal.ArrayNotificationBuffer.fetchNotifications(ArrayNotificationBuffer.java:449)
	- locked <0x00000000eb9d4398> (a com.sun.jmx.remote.internal.ArrayNotificationBuffer)
	at com.sun.jmx.remote.internal.ArrayNotificationBuffer$ShareBuffer.fetchNotifications(ArrayNotificationBuffer.java:227)
	at com.sun.jmx.remote.internal.ServerNotifForwarder.fetchNotifs(ServerNotifForwarder.java:274)
	at javax.management.remote.rmi.RMIConnectionImpl$4.run(RMIConnectionImpl.java:1272)
	at javax.management.remote.rmi.RMIConnectionImpl$4.run(RMIConnectionImpl.java:1270)
	at javax.management.remote.rmi.RMIConnectionImpl.fetchNotifications(RMIConnectionImpl.java:1276)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:519)
	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:321)
	at sun.rmi.transport.Transport$1.run(Transport.java:200)
	at sun.rmi.transport.Transport$1.run(Transport.java:197)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:563)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:821)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:678)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$$Lambda$125/1429990788.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:677)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:746)

"JMX server connection timeout 77" #77 daemon prio=5 os_prio=0 tid=0x00007f3658018800 nid=0x1480 in Object.wait() [0x00007f35e6ecd000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at com.sun.jmx.remote.internal.ServerCommunicatorAdmin$Timeout.run(ServerCommunicatorAdmin.java:168)
	- locked <0x00000000ebafa790> (a [I)
	at java.lang.Thread.run(Thread.java:746)

"RMI TCP Connection(5)-10.161.190.146" #76 daemon prio=5 os_prio=0 tid=0x00007f365c008000 nid=0x147f waiting on condition [0x00007f35e6fca000]
   java.lang.Thread.State: RUNNABLE
	at com.sun.management.internal.DiagnosticCommandImpl.executeDiagnosticCommand(Native Method)
	at com.sun.management.internal.DiagnosticCommandImpl.access$000(DiagnosticCommandImpl.java:60)
	at com.sun.management.internal.DiagnosticCommandImpl$Wrapper.execute(DiagnosticCommandImpl.java:170)
	at com.sun.management.internal.DiagnosticCommandImpl.invoke(DiagnosticCommandImpl.java:261)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1470)
	at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:75)
	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1311)
	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1403)
	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:831)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:519)
	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:321)
	at sun.rmi.transport.Transport$1.run(Transport.java:200)
	at sun.rmi.transport.Transport$1.run(Transport.java:197)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:563)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:821)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:678)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$$Lambda$125/1429990788.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:677)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:746)

"RMI TCP Connection(idle)" #75 daemon prio=5 os_prio=0 tid=0x00007f365c006800 nid=0x147e waiting on condition [0x00007f35e70cf000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000e0bad6f8> (a java.util.concurrent.SynchronousQueue$TransferStack)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
	at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
	at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
	at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:746)

"[ThreadPool Manager] - Idle Thread" #74 daemon prio=5 os_prio=0 tid=0x00007f364c018000 nid=0x147d in Object.wait() [0x00007f35e7f4b000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:106)
	- locked <0x00000000ec180330> (a org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor)

"AWT-EventQueue-0" #72 prio=6 os_prio=0 tid=0x00007f364439a000 nid=0x1474 runnable [0x00007f35e804a000]
   java.lang.Thread.State: RUNNABLE
	at sun.awt.UNIXToolkit.load_gtk(Native Method)
	at sun.awt.UNIXToolkit.loadGTK(UNIXToolkit.java:100)
	- locked <0x00000000e6373d38> (a java.lang.Object)
	at sun.awt.X11.XRobotPeer.<init>(XRobotPeer.java:54)
	at sun.awt.X11.XToolkit.createRobot(XToolkit.java:930)
	at java.awt.Robot.init(Robot.java:136)
	at java.awt.Robot.<init>(Robot.java:95)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:425)
	at org.jemmy.input.ClassReference.newInstance(ClassReference.java:163)
	at org.jemmy.input.RobotExecutor.doInitRobot(RobotExecutor.java:537)
	at org.jemmy.input.RobotExecutor.access$200(RobotExecutor.java:71)
	at org.jemmy.input.RobotExecutor$4.run(RobotExecutor.java:523)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:303)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:759)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:712)
	at java.awt.EventQueue$3.run(EventQueue.java:706)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:77)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:729)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:192)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:106)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:102)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:94)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:83)

"AWT-Shutdown" #73 prio=6 os_prio=0 tid=0x00007f36440bf800 nid=0x1473 in Object.wait() [0x00007f35e7d49000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:292)
	- locked <0x00000000ecfa32e8> (a java.lang.Object)
	at java.lang.Thread.run(Thread.java:746)

"ActionQueue.queueThread" #71 prio=6 os_prio=0 tid=0x00007f367c092800 nid=0x1471 in Object.wait() [0x00007f3638b5f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at java.awt.EventQueue.invokeAndWait(EventQueue.java:1315)
	- locked <0x00000000ecf9bed0> (a java.awt.EventQueue$1AWTInvocationLock)
	at java.awt.EventQueue.invokeAndWait(EventQueue.java:1296)
	at org.jemmy.input.RobotExecutor.initRobot(RobotExecutor.java:520)
	at org.jemmy.input.RobotExecutor.makeAnOperationLocally(RobotExecutor.java:163)
	at org.jemmy.input.RobotExecutor.makeAnOperation(RobotExecutor.java:143)
	at org.jemmy.input.RobotDriver.makeAnOperation(RobotDriver.java:292)
	at org.jemmy.input.RobotDriver.pressKey(RobotDriver.java:252)
	at org.jemmy.input.KeyboardImpl$2.run(KeyboardImpl.java:130)
	at org.jemmy.action.Action.execute(Action.java:57)
	at org.jemmy.action.AbstractExecutor.execute(AbstractExecutor.java:103)
	at org.jemmy.input.KeyboardImpl.runAction(KeyboardImpl.java:76)
	at org.jemmy.input.KeyboardImpl.pressKey(KeyboardImpl.java:128)
	at org.jemmy.input.KeyboardImpl$1.run(KeyboardImpl.java:98)
	at org.jemmy.action.Action.execute(Action.java:57)
	at org.jemmy.action.ActionQueue$ActionRecord.execute(ActionQueue.java:172)
	at org.jemmy.action.ActionQueue$1.run(ActionQueue.java:70)
	at java.lang.Thread.run(Thread.java:746)

"RMI RenewClean-[10.163.186.59:51814]" #60 daemon prio=6 os_prio=0 tid=0x00007f367c0ab800 nid=0x1461 in Object.wait() [0x00007f363a61a000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:150)
	- locked <0x00000000edfe2788> (a java.lang.ref.ReferenceQueue$Lock)
	at sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run(DGCClient.java:532)
	at java.lang.Thread.run(Thread.java:746)

"Attach Listener" #58 daemon prio=9 os_prio=0 tid=0x00007f3680002800 nid=0x144d runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"pool-1-thread-1" #57 prio=5 os_prio=0 tid=0x00007f36dd6ab000 nid=0x144c waiting on condition [0x00007f3638c60000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000e668ade8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:746)

"Local Descriptor Scanner" #56 prio=6 os_prio=0 tid=0x00007f3688065800 nid=0x144a waiting on condition [0x00007f363855b000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at com.oracle.jmc.browser.attach.LocalDescriptorProvider$LocalScanner.run(LocalDescriptorProvider.java:47)
	at java.lang.Thread.run(Thread.java:746)

"(JDP Client Pruner)" #55 daemon prio=6 os_prio=0 tid=0x00007f3688058000 nid=0x1449 waiting on condition [0x00007f363865c000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at com.oracle.jmc.jdp.client.Pruner.run(Pruner.java:53)
	at java.lang.Thread.run(Thread.java:746)

"(JDP Packet Listener)" #54 daemon prio=6 os_prio=0 tid=0x00007f3688056000 nid=0x1448 runnable [0x00007f363875d000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainDatagramSocketImpl.receive0(Native Method)
	- locked <0x00000000e668c3e8> (a java.net.PlainDatagramSocketImpl)
	at java.net.AbstractPlainDatagramSocketImpl.receive(AbstractPlainDatagramSocketImpl.java:144)
	- locked <0x00000000e668c3e8> (a java.net.PlainDatagramSocketImpl)
	at java.net.DatagramSocket.receive(DatagramSocket.java:814)
	- locked <0x00000000e668c418> (a java.net.DatagramPacket)
	- locked <0x00000000e668c440> (a java.net.MulticastSocket)
	at com.oracle.jmc.jdp.client.PacketListener.run(PacketListener.java:37)
	at java.lang.Thread.run(Thread.java:746)

"AWT-XAWT" #49 daemon prio=6 os_prio=0 tid=0x00007f367c0a2000 nid=0x1443 waiting on condition [0x00007f3638d61000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000e6373d98> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
	at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209)
	at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285)
	at sun.awt.SunToolkit.awtLock(SunToolkit.java:202)
	at sun.awt.X11.XToolkit.waitForEvents(Native Method)
	at sun.awt.X11.XToolkit.run(XToolkit.java:578)
	at sun.awt.X11.XToolkit.run(XToolkit.java:542)
	at java.lang.Thread.run(Thread.java:746)

"Java2D Disposer" #47 daemon prio=10 os_prio=0 tid=0x00007f367c090000 nid=0x1442 in Object.wait() [0x00007f3638e62000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:150)
	- locked <0x00000000e668c630> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:171)
	at sun.java2d.Disposer.run(Disposer.java:145)
	at java.lang.Thread.run(Thread.java:746)

"ActionQueue.queueThread" #46 prio=6 os_prio=0 tid=0x00007f367c03d800 nid=0x1441 in Object.wait() [0x00007f363d9e7000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at org.jemmy.action.ActionQueue$1.run(ActionQueue.java:59)
	- locked <0x00000000e668c7e8> (a java.util.LinkedList)
	at java.lang.Thread.run(Thread.java:746)

"WorkbenchTestable" #45 prio=6 os_prio=0 tid=0x00007f36dd665000 nid=0x1440 waiting on condition [0x00007f363d7e4000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000e6373d98> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
	at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209)
	at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285)
	at sun.awt.SunToolkit.awtLock(SunToolkit.java:202)
	at sun.awt.X11.XToolkit.getNumberOfButtons(XToolkit.java:1556)
	at sun.awt.X11.XRobotPeer.<init>(XRobotPeer.java:48)
	at sun.awt.X11.XToolkit.createRobot(XToolkit.java:930)
	at java.awt.Robot.init(Robot.java:136)
	at java.awt.Robot.<init>(Robot.java:95)
	at com.oracle.jmc.test.TestHelper.dumpScreen(TestHelper.java:42)
	at com.oracle.jmc.test.junit.JmcUITestRule.failed(JmcUITestRule.java:160)
	at com.oracle.jmc.test.junit.JmcUITestRule.failedQuietly(JmcUITestRule.java:106)
	at com.oracle.jmc.test.junit.JmcUITestRule.access$4(JmcUITestRule.java:104)
	at com.oracle.jmc.test.junit.JmcUITestRule$1.evaluate(JmcUITestRule.java:95)
	at com.oracle.jmc.test.junit.JmcUITestRule$1.evaluate(JmcUITestRule.java:88)
	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.junit.runners.Suite.runChild(Suite.java:128)
	at org.junit.runners.Suite.runChild(Suite.java:27)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
	at com.oracle.jmc.test.junit.Launcher.run(Launcher.java:235)
	at com.oracle.jmc.test.junit.Launcher.runTests(Launcher.java:208)
	at org.eclipse.e4.ui.internal.workbench.swt.E4Testable$1.run(E4Testable.java:73)
	at java.lang.Thread.run(Thread.java:746)

"EventAdmin Async Event Dispatcher Thread" #44 daemon prio=6 os_prio=0 tid=0x00007f36dd664800 nid=0x143f in Object.wait() [0x00007f363d8e6000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x00000000e6531888> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

"Java indexing" #42 daemon prio=4 os_prio=0 tid=0x00007f36dca9a000 nid=0x143d in Object.wait() [0x00007f3653efd000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:382)
	- locked <0x00000000e668d2f0> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
	at java.lang.Thread.run(Thread.java:746)

"Provisioning Event Dispatcher" #37 daemon prio=5 os_prio=0 tid=0x00007f36540a2800 nid=0x1437 in Object.wait() [0x00007f363dbe9000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x00000000e668f848> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

"Worker-1" #36 prio=5 os_prio=0 tid=0x00007f36540c0000 nid=0x1436 in Object.wait() [0x00007f363dcea000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x00000000e036ba00> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:52)

"GC Daemon" #34 daemon prio=2 os_prio=0 tid=0x00007f36dccc0000 nid=0x1432 in Object.wait() [0x00007f363dfeb000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at sun.misc.GC$Daemon.run(GC.java:116)
	- locked <0x00000000e668fcf8> (a sun.misc.GC$LatencyLock)

"RMI RenewClean-[10.163.186.59:34992]" #33 daemon prio=5 os_prio=0 tid=0x00007f36dccbe000 nid=0x1431 in Object.wait() [0x00007f363e0ec000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:150)
	- locked <0x00000000e668fe80> (a java.lang.ref.ReferenceQueue$Lock)
	at sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run(DGCClient.java:532)
	at java.lang.Thread.run(Thread.java:746)

"RMI Scheduler(0)" #32 daemon prio=5 os_prio=0 tid=0x00007f36dccb4000 nid=0x1430 waiting on condition [0x00007f363e1ed000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000e0bb0738> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:746)

"Worker-0" #31 prio=5 os_prio=0 tid=0x00007f36dcc95000 nid=0x142e in Object.wait() [0x00007f3650162000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x00000000e036ba00> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:52)

"EMF Reference Cleaner" #30 daemon prio=5 os_prio=0 tid=0x00007f364c045000 nid=0x142d in Object.wait() [0x00007f36536d5000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:150)
	- locked <0x00000000e036bc08> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:171)
	at org.eclipse.emf.common.util.CommonUtil$1ReferenceClearingQueuePollingThread.run(CommonUtil.java:70)

"[Timer] - Main Queue Handler" #27 daemon prio=5 os_prio=0 tid=0x00007f3644240000 nid=0x142b in Object.wait() [0x00007f36537d6000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at org.eclipse.equinox.internal.util.impl.tpt.timer.TimerImpl.run(TimerImpl.java:141)
	- locked <0x00000000e036bdc8> (a java.lang.Object)
	at java.lang.Thread.run(Thread.java:746)

"Worker-JM" #26 prio=5 os_prio=0 tid=0x00007f364829c800 nid=0x142a in Object.wait() [0x00007f36538d7000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at org.eclipse.core.internal.jobs.InternalWorker.run(InternalWorker.java:59)
	- locked <0x00000000e036c030> (a java.util.ArrayList)

"Bundle File Closer" #24 daemon prio=5 os_prio=0 tid=0x00007f3644515800 nid=0x1427 in Object.wait() [0x00007f3653ffe000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x00000000e0ca0d38> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

"Refresh Thread: Equinox Container: 0026cdce-ab78-0015-14b5-d91be0512bfb" #23 daemon prio=5 os_prio=0 tid=0x00007f36dc977800 nid=0x1426 in Object.wait() [0x00007f3653ce9000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x00000000e08cb240> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

"Start Level: Equinox Container: 0026cdce-ab78-0015-14b5-d91be0512bfb" #22 daemon prio=5 os_prio=0 tid=0x00007f36dca17800 nid=0x1425 in Object.wait() [0x00007f3653dea000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x00000000e08cb798> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

"Framework Event Dispatcher: Equinox Container: 0026cdce-ab78-0015-14b5-d91be0512bfb" #21 daemon prio=5 os_prio=0 tid=0x00007f36dc9d6800 nid=0x1424 in Object.wait() [0x00007f368414f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x00000000e08cbfd8> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

"Active Thread: Equinox Container: 0026cdce-ab78-0015-14b5-d91be0512bfb" #19 prio=5 os_prio=0 tid=0x00007f36dc961000 nid=0x1423 waiting on condition [0x00007f3684664000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000e08cc2d8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809)
	at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:746)

"RMI TCP Accept-0" #17 daemon prio=5 os_prio=0 tid=0x00007f36dc644800 nid=0x1421 runnable [0x00007f3684a66000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketAccept(Native Method)
	at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:409)
	at java.net.ServerSocket.implAccept(ServerSocket.java:546)
	at java.net.ServerSocket.accept(ServerSocket.java:514)
	at sun.management.jmxremote.LocalRMIServerSocketFactory$1.accept(LocalRMIServerSocketFactory.java:52)
	at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:395)
	at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:367)
	at java.lang.Thread.run(Thread.java:746)

"RMI TCP Accept-7091" #16 daemon prio=5 os_prio=0 tid=0x00007f36dc634800 nid=0x1420 runnable [0x00007f3684b67000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketAccept(Native Method)
	at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:409)
	at java.net.ServerSocket.implAccept(ServerSocket.java:546)
	at java.net.ServerSocket.accept(ServerSocket.java:514)
	at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:395)
	at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:367)
	at java.lang.Thread.run(Thread.java:746)

"Service Thread" #14 daemon prio=9 os_prio=0 tid=0x00007f36dc565000 nid=0x141f runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Sweeper thread" #13 daemon prio=9 os_prio=0 tid=0x00007f36dc562800 nid=0x141e runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C1 CompilerThread2" #12 daemon prio=9 os_prio=0 tid=0x00007f36dc560800 nid=0x141d waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" #11 daemon prio=9 os_prio=0 tid=0x00007f36dc55e800 nid=0x141c waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" #10 daemon prio=9 os_prio=0 tid=0x00007f36dc55d000 nid=0x141b waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"VM JFR Buffer Thread" #9 daemon prio=5 os_prio=0 tid=0x00007f36dc4e8800 nid=0x141a waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"JFR request timer" #7 daemon prio=5 os_prio=0 tid=0x00007f36dc408800 nid=0x1419 in Object.wait() [0x00007f36a0193000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.util.TimerThread.mainLoop(Timer.java:552)
	- locked <0x00000000e00cb968> (a java.util.TaskQueue)
	at java.util.TimerThread.run(Timer.java:505)

"Signal Dispatcher" #5 daemon prio=9 os_prio=0 tid=0x00007f36dc288800 nid=0x1418 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Surrogate Locker Thread (Concurrent GC)" #4 daemon prio=9 os_prio=0 tid=0x00007f36dc284000 nid=0x1417 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" #3 daemon prio=8 os_prio=0 tid=0x00007f36dc24d000 nid=0x1416 in Object.wait() [0x00007f36c8d3f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:150)
	- locked <0x00000000e00cbdf0> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:171)
	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:217)

"Reference Handler" #2 daemon prio=10 os_prio=0 tid=0x00007f36dc24b000 nid=0x1415 in Object.wait() [0x00007f36c8e40000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <no object reference available>
	at java.lang.Object.wait(Object.java:516)
	at java.lang.ref.Reference.tryHandlePending(Reference.java:193)
	- locked <0x00000000e00cbfa8> (a java.lang.ref.Reference$Lock)
	at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:155)

"main" #1 prio=6 os_prio=0 tid=0x00007f36dc011000 nid=0x1408 runnable [0x00007f36e577b000]
   java.lang.Thread.State: RUNNABLE
	at org.eclipse.swt.internal.gtk.OS.Call(Native Method)
	at org.eclipse.swt.widgets.Display.sleep(Display.java:4320)
	at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle(WorkbenchAdvisor.java:368)
	at com.oracle.jmc.rcp.application.ApplicationWorkbenchAdvisor.eventLoopIdle(ApplicationWorkbenchAdvisor.java:62)
	at org.eclipse.ui.internal.Workbench$3.eventLoopIdle(Workbench.java:517)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1132)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at com.oracle.jmc.rcp.application.Application.start(Application.java:36)
	at com.oracle.jmc.test.junit.Launcher.internalRun(Launcher.java:182)
	at com.oracle.jmc.test.junit.Launcher.start(Launcher.java:132)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:519)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1488)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:519)
	at com.oracle.jmc.rcp.start.MCMain.run(MCMain.java:111)
	at com.oracle.jmc.test.start.MCTestMain.main(MCTestMain.java:38)

"VM Thread" os_prio=0 tid=0x00007f36dc238800 nid=0x1414 runnable 

"GC Thread#0" os_prio=0 tid=0x00007f36dc02a800 nid=0x1409 runnable 

"GC Thread#1" os_prio=0 tid=0x00007f36dc02c800 nid=0x140a runnable 

"GC Thread#2" os_prio=0 tid=0x00007f36dc02e000 nid=0x140b runnable 

"GC Thread#3" os_prio=0 tid=0x00007f36dc030000 nid=0x140c runnable 

"G1 Main Marker" os_prio=0 tid=0x00007f36dc064800 nid=0x1412 runnable 

"G1 Marker#0" os_prio=0 tid=0x00007f36dc066000 nid=0x1413 runnable 

"G1 Refine#0" os_prio=0 tid=0x00007f36dc039000 nid=0x1411 runnable 

"G1 Refine#1" os_prio=0 tid=0x00007f36dc037800 nid=0x1410 runnable 

"G1 Refine#2" os_prio=0 tid=0x00007f36dc035800 nid=0x140f runnable 

"G1 Refine#3" os_prio=0 tid=0x00007f36dc034000 nid=0x140e runnable 

"G1 Refine#4" os_prio=0 tid=0x00007f36dc032000 nid=0x140d runnable 

"VM Periodic Task Thread" os_prio=0 tid=0x00007f36dc646000 nid=0x1422 waiting on condition 

JNI global references: 792


Comments
The issue is fixed as part of JEP 283 (JDK-8145568)
30-05-2016

This deadlock issue seems to have been resolved as of the GTK3 enablement of JDK 9
30-05-2016

JDK-8145568 JEP 283: Enable GTK 3 on Linux integrated in JDK 9 b118 promotion build
11-05-2016

"java.awt.Robot.init(Robot.java:136)" leads to gtk2 initialization which is interfered by gtk3. Probably this mix can work in some cases but it may cause issues in others. In the 80 build the robot was changed to use gtk to fix JDK-8014212, before it used X11lib only. That is probably the reason why it worked before.
29-10-2015

Need more info Erik, please reply on above concern, is it a case of mixing?
28-10-2015

Sergey, this is the place where it is deadlocked: #0 0x00007fae00269705 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007fad56b4ecb7 in g_cond_wait () from /lib64/libglib-2.0.so.0 #2 0x00007fad56b3182b in g_once_init_enter () from /lib64/libglib-2.0.so.0 #3 0x00007facf43a6ae1 in _gdk_display_x11_get_type () from /lib64/libgdk-x11-2.0.so.0 #4 0x00007facf43a6ebe in gdk_display_open () from /lib64/libgdk-x11-2.0.so.0 #5 0x00007facf4374ded in gdk_display_open_default_libgtk_only () from /lib64/libgdk-x11-2.0.so.0 #6 0x00007facf475a614 in gtk_init_check () from /lib64/libgtk-x11-2.0.so.0 #7 0x00007fad4f3788f9 in gtk2_load () from /localhome/tendril4.2/work/install/jdk9u0-latest-b80/jdk/jdk1.9.0/lib/amd64/libawt_xawt.so #8 0x00007fad4f3747d9 in Java_sun_awt_UNIXToolkit_load_1gtk () from /localhome/tendril4.2/work/install/jdk9u0-latest-b80/jdk/jdk1.9.0/lib/amd64/libawt_xawt.so does it seem familiar to you?
28-10-2015

Possibly the problem is in the mixing of gtk2 and gtk3 in the same application. Officially such mixing is not supported by the gtk. awt is implemented using gtk2, your version of swt uses gtk3 by default. If jmc uses java.awt.FileDialog then this code can hang in production as well(This should be double checked)
27-10-2015

I'll set up credentials on one of the testing machines and gather some instructions on how to do and get back to you. In the mean time you can have a look at our nightly builds that can be found here: http://jrpgftp.se.oracle.com/missioncontrol_builds/M6.0.0/builds/
27-10-2015

Yes, I would appreciate it. And it would be nice to have credentials to login into this VM. And a link where to download JMC is also very desirable. Thanks!
26-10-2015