RFR (M) 8221183: Avoid code cache walk in MetadataOnStackMark

coleen.phillimore at oracle.com coleen.phillimore at oracle.com
Fri Mar 29 14:54:02 UTC 2019


Hi Erik,
Thank you for reviewing this!

On 3/29/19 9:39 AM, Erik Österlund wrote:
> Hi Coleen,
>
> Seems like the recreate_old_table() should be called reset_old_table() 
> as it does not really create anything.
>

I can change the name.  I guess the table isn't old but the methods 
are.  So I could call it reset_old_method_table instead.

> The CodeCache::mark_all_nmethods_for_deoptimization function seems 
> like a general facility. I don't think I like passing in a boolean if 
> class redefinition-specific stuff should be done in there or not. It's 
> a very small method that just iterates over the nmethods. I'd rather 
> duplicate that while loop in a new function and have the class 
> redefinition logic be separate.
>

Yes, I could do this too.  I hate passing a boolean to a function to do 
something different.  Sort of implies one should write a different 
function in the first place.

Thanks!
Coleen
> Otherwise this looks good!
>
> Thanks,
> /Erik
>
> On 2019-03-27 14:09, coleen.phillimore at oracle.com wrote:
>> Summary: Note nmethods with "old" Methods in them in table to walk 
>> instead.
>>
>> See RFE for more details.  Tested with RedefineClasses tests 
>> with/without -Xcomp, mach5 tier1-5.
>>
>> open webrev at 
>> http://cr.openjdk.java.net/~coleenp/2019/8221183.01/webrev
>> bug link https://bugs.openjdk.java.net/browse/JDK-8221183
>>
>> Thanks,
>> Coleen



More information about the serviceability-dev mailing list