RFR: 8219708: Stop flushing OSR nmethods earlier in the sweeper
Tobias Hartmann
tobias.hartmann at oracle.com
Tue Feb 26 10:18:51 UTC 2019
+1
Best regards,
Tobias
On 26.02.19 10:17, Nils Eliasson wrote:
> Hi Erik,
>
> Looks great!
>
> // Nils
>
> On 2019-02-26 09:10, Erik Österlund wrote:
>> Hi,
>>
>> The sweeper has an optimization that makes the lifecycle of nmethods more complicated than it
>> needs to be.
>> It recognizes that no inline caches point at OSR nmethods, and uses that knowledge to reclaim OSR
>> nmethods more aggressively than normal nmethods. It assumes that it is okay to flush unloded
>> nmethods, and nmethods we just made zombie immediately. But if the nmethod is locked, it needs to
>> wait anyway.
>>
>> There have been multiple bugs due to this special life cycle of OSR nmethods, and it is simply not
>> worth it. It also blocks concurrent ICStub reclamation, which requires the more robust life cycle.
>>
>> Bug:
>> https://bugs.openjdk.java.net/browse/JDK-8219708
>>
>> Webrev:
>> http://cr.openjdk.java.net/~eosterlund/8219708/webrev.00/
>>
>> Thanks,
>> /Erik
More information about the hotspot-compiler-dev
mailing list