IV26972: MULTIPLE THREADS STUCK IN PARKED STATE
Closed as program error.
Error Message: The JVM hangs while multiple threads are parked on the same lock (e.g. a java/util/concurrent/locks/ReentrantLock$NonfairSync object). The thread that is supposed to wake all the parked threads is also incorrectly stuck in the parked state so all the threads remain parked and never wake up. . Stack Trace: sun/misc/Unsafe.park java/util/concurrent/locks/LockSupport.park java/util/concurrent/locks/AbstractQueuedSynchronizer.parkAndChe ckInterrupt java/util/concurrent/locks/AbstractQueuedSynchronizer.acquireQue ued java/util/concurrent/locks/AbstractQueuedSynchronizer.acquire java/util/concurrent/locks/ReentrantLock$NonfairSync.lock java/util/concurrent/locks/ReentrantLock.lock java/util/concurrent/ArrayBlockingQueue.offer .
The problem occurs when the Java code depends on volatile semantics to ensure that the volatile field updates are seen in different threads. The problem is caused by incorrect volatile field handling in JIT-compiled code. A memory fence for a volatile field is missing after a write operation due to incorrect JIT code generation. This issue affects z/OS and z/Linux, running on z9 or older hardware.
This defect will be fixed in: 5.0 SR15 6.0 SR12 6.0.1 SR3 7.0.0 SR2 . The JIT compiler has been updated to generate the memory fence if the field is found to be a volatile.
Reported component name
Reported component ID
Last modified date
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fixed component name
Fixed component ID
Applicable component levels