Prepared by: | Thomas Schatzl (tschatzl) on Fri Jan 17 14:16:52 CET 2020 |
---|---|
Workspace: | /home/tschatzl/Downloads/openjdk |
Compare against: | http://hg.openjdk.java.net/jdk/jdk |
Compare against version: | -2 |
Summary of changes: | 19 lines changed: 8 ins; 7 del; 4 mod; 569 unchg |
Patch of changes: | openjdk.patch |
Legend: |
Modified file Deleted file New file |
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
src/hotspot/share/gc/g1/g1OopClosures.hpp
rev 57729 : 8235305: Corrupted oops embedded in nmethods due to parallel modification during optional evacuation Summary: During optional evacuation it is possible that G1 modifies oops embedded in nmethods in parallel. One source are oop* gathered by a previous evacuation phase in the optional roots, the other the region's strong code roots list. Since these oops may be unaligned on x64, this can result in them being corrupted. The fix is to not gather embedded oops in the optional roots list as the strong code roots list contains them already. Contributed-by: erik.osterlund@oracle.com, stefan.johansson@oracle.com, stefan.karlsson@oracle.com, thomas.schatzl@oracle.com Reviewed-by: rev 57730 : [mq]: 8235305-sjohanss-review1 line changed: 0 ins; 0 del; 1 mod; 241 unchg
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
src/hotspot/share/gc/g1/g1OopClosures.inline.hpp
rev 57729 : 8235305: Corrupted oops embedded in nmethods due to parallel modification during optional evacuation Summary: During optional evacuation it is possible that G1 modifies oops embedded in nmethods in parallel. One source are oop* gathered by a previous evacuation phase in the optional roots, the other the region's strong code roots list. Since these oops may be unaligned on x64, this can result in them being corrupted. The fix is to not gather embedded oops in the optional roots list as the strong code roots list contains them already. Contributed-by: erik.osterlund@oracle.com, stefan.johansson@oracle.com, stefan.karlsson@oracle.com, thomas.schatzl@oracle.com Reviewed-by: rev 57730 : [mq]: 8235305-sjohanss-review10 lines changed: 8 ins; 0 del; 2 mod; 275 unchg
Cdiffs
Udiffs
Sdiffs
Frames
Old
New
Patch
Raw
src/hotspot/share/gc/g1/g1SharedClosures.hpp
rev 57729 : 8235305: Corrupted oops embedded in nmethods due to parallel modification during optional evacuation Summary: During optional evacuation it is possible that G1 modifies oops embedded in nmethods in parallel. One source are oop* gathered by a previous evacuation phase in the optional roots, the other the region's strong code roots list. Since these oops may be unaligned on x64, this can result in them being corrupted. The fix is to not gather embedded oops in the optional roots list as the strong code roots list contains them already. Contributed-by: erik.osterlund@oracle.com, stefan.johansson@oracle.com, stefan.karlsson@oracle.com, thomas.schatzl@oracle.com Reviewed-by: rev 57730 : [mq]: 8235305-sjohanss-review8 lines changed: 0 ins; 7 del; 1 mod; 53 unchg
This code review page was prepared using ../webrev.ksh (vers 25.17-hg+openjdk.java.net).