JDK-8073198 : assert(dmw->is_neutral()) failed: invariant
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 9
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2015-02-16
  • Updated: 2015-04-07
  • Resolved: 2015-04-07
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9Resolved
Related Reports
Duplicate :  
Description
It seems the displaced mark is already locked.

#  Internal Error (hotspot/src/share/vm/runtime/synchronizer.cpp:1254), pid=3475, tid=140084453742336
#  assert(dmw->is_neutral()) failed: invariant

Options: -d64 -Xmixed -server -d64 -XX:MaxRAMFraction=8 -XX:+CreateMinidumpOnCrash -XX:+UseG1GC -XX:MaxRAMFraction=8 -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -XX:CompileCommand=compileonly,null::* -XX:-SegmentedCodeCache

ILW = High (assert fails), Low (only seen this once), High (unknown) = P2

Comments
JDK-8075214 uncovered a serious problem with forced sweeper thread - the thread oop was unhandled and could be relocated by the GC while still being used. This can result in a number of failure modes including this one. JDK-8075214 removed the forced sweeper thread altogether as it had a number of issues. So closing this as a duplicate of JDK-8075214. Note: the fix for JDK-8075214 is still in hs-comp forest at time of writing.
07-04-2015

See also JDK-8069548 where the same failure mode could be induced. Also see JDK-8072377 WhiteBox sweeper thread management bugs
16-02-2015