JDK-8206938 : Compilation policy fails with assert(!m->was_never_executed()) failed: don't reset to 0 -- could be mistaken for never-executed
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 11,12
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2018-07-09
  • Updated: 2019-09-13
  • Resolved: 2019-01-04
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 13
13Resolved
Related Reports
Duplicate :  
Relates :  
Description
Test 	vmTestbase/vm/gc/compact/Compact_InternedStrings_Strings/TestDescription.java

failed in JDK11 b20 testing. The hs_err file is attached.

#  Internal Error (t:/workspace/open/src/hotspot/share/runtime/compilationPolicy.cpp:259), pid=7488, tid=44256
#  assert(!m->was_never_executed()) failed: don't reset to 0 -- could be mistaken for never-executed

Stack: [0x000000f4a11c0000,0x000000f4a12c0000]
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [jvm.dll+0xb960f1]  os::platform_print_native_stack+0xf1  (os_windows_x86.cpp:373)
V  [jvm.dll+0xd97cca]  VMError::report+0xe6a  (vmerror.cpp:696)
V  [jvm.dll+0xd995eb]  VMError::report_and_die+0x85b  (vmerror.cpp:1448)
V  [jvm.dll+0xd99d14]  VMError::report_and_die+0x64  (vmerror.cpp:1267)
V  [jvm.dll+0x5beebe]  report_vm_error+0x7e  (debug.cpp:233)
V  [jvm.dll+0x53e788]  NonTieredCompPolicy::reset_counter_for_invocation_event+0x138  (compilationpolicy.cpp:259)
V  [jvm.dll+0x53dd5b]  SimpleCompPolicy::method_invocation_event+0x7b  (compilationpolicy.cpp:495)
V  [jvm.dll+0x53c956]  NonTieredCompPolicy::event+0x196  (compilationpolicy.cpp:417)
V  [jvm.dll+0x799f9e]  InterpreterRuntime::frequency_counter_overflow_inner+0x2ee  (interpreterruntime.cpp:1078)
V  [jvm.dll+0x799b63]  InterpreterRuntime::frequency_counter_overflow+0x23  (interpreterruntime.cpp:1033)
C  0x000000f499dc512e
Comments
I've just noticed that this is actually a duplicate of JDK-8025220. Closing.
04-01-2019

I'm not sure how this can happen. In NonTieredCompPolicy::reset_counter_for_invocation_event(), we set the sticky carry bit and then call m->was_never_executed() which should always return false if the carry bit is set. ILW = Assert due to invalid update of method invocation counter (should not affect product), intermittent with single test, no workaround = MMH = P3
10-07-2018

Yes, JDK-7115356 seems to be the same issue. Nils, you owned JDK-7115356. Could you please have a look? Thanks.
10-07-2018

Analysis comments in old JDK-7115356 seems to be related here. Again the one mach5 failure reported so far is in Windows-x64.
10-07-2018