<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Thanks!<div class=""><br class=""></div><div class="">tom</div><div class=""><br class=""><div style=""><blockquote type="cite" class=""><div class="">On Nov 10, 2015, at 2:47 PM, Christian Thalinger <<a href="mailto:christian.thalinger@oracle.com" class="">christian.thalinger@oracle.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Looks good.<div class=""><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Nov 10, 2015, at 10:53 AM, Tom Rodriguez <<a href="mailto:tom.rodriguez@oracle.com" class="">tom.rodriguez@oracle.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><a href="http://cr.openjdk.java.net/~never/8142436/webrev/" class="">http://cr.openjdk.java.net/~never/8142436/webrev/</a><div class=""><br class=""></div><div class="">nmethod::_installed_code maintains a link to the InstalledCode instance associated with an nmethod and will be cleared out once the InstalledCode reference is dead or when the nmethod becomes a zombie.  Since G1 tracks which nmethods have references into a region, special care must be take when updating this field to avoid crashes.  Barriers must be run with changing the value of this field, which wasn’t being done in maybe_invalidate_installed_code, so the clearing of that field was consolidated with barriers.   There was also an extra copy of some special logic in do_unloading_parallel that was missing the barriers, which was deleted.  Tested with Graal bootstrap running with G1 that would previously crash in G1 about 1 in 4 times.</div><div class=""><br class=""></div><div class="">tom</div></div></div></blockquote></div><br class=""></div></div></div></blockquote></div><br class=""></div></body></html>