RFR(S) : 8043125 : compiler/types/correctness/CorrectnessTest.java: assert(layout->tag() == DataLayout::speculative_trap_data_tag) failed: wrong type

Igor Ignatyev igor.ignatyev at oracle.com
Thu Oct 30 03:01:09 UTC 2014


http://cr.openjdk.java.net/~iignatyev/8043125/webrev.00/
12 lines changed: 0 ins; 10 del; 2 mod;

Hi all,

Please review patch:

Problem:
WB_ClearMethodState triggers VM_WhiteBoxCleanMethodData which cleans all 
profile entries. Though WhiteBoxCleanMethodData requires a safepoint, 
this clean may happen during SpeculativeTrapData translation (in 
ciMethodData::load_extra_data) and entries being translated are then 
removed.

Fix:
instead of using VM operation, ClearMethodState holds the lock on 
methodData:extra_data_lock().
// ciMethodData::load_extra_data() holds the same lock.

jbs: https://jbs.oracle.com/bugs/browse/JDK-8043125
testing:
  - jprt
  - compiler/types/correctness/CorrectnessTest.java a hundred times
-- 
Igor


More information about the hotspot-compiler-dev mailing list