RFR: 8248216: JFR: Unify handling of all OopStorage instances in LeakProfiler root processing
Erik Österlund
erik.osterlund at oracle.com
Wed Jun 24 13:29:07 UTC 2020
Hi Stefan,
Thanks for the review.
Updated to use your new API:
http://cr.openjdk.java.net/~eosterlund/8248216/webrev.01/
Also added Markus to the conversation.
Thanks,
/Erik
On 2020-06-24 14:36, Stefan Karlsson wrote:
> Hi Erik,
>
> On 2020-06-24 11:13, Erik Österlund wrote:
>> Hi,
>>
>> We want it to be as convenient as possible for the runtime to add new
>> OopStorage instances. Therefore, rather than picking specific
>> OopStorages during LeakProfiler root processing, the
>> OopStorageSet::strong_iterator() should be used instead. That way,
>> once a new OopStorage is added to the OopStorageSet, it is
>> automatically plugged in to the JFR LeakProfiler.
>>
>> Bug:
>> https://bugs.openjdk.java.net/browse/JDK-8248216
>>
>> Webrev:
>> http://cr.openjdk.java.net/~eosterlund/8248216/webrev.00/
>
> https://cr.openjdk.java.net/~eosterlund/8248216/webrev.00/src/hotspot/share/jfr/leakprofiler/chains/rootSetClosure.cpp.udiff.html
>
>
> I've now pushed a change so that you can simplify:
>
> + for (OopStorageSet::Iterator it = OopStorageSet::strong_iterator();
> !it.is_end(); ++it) {
> + it->oops_do(this);
> + } to: OopStorageSet::strong_oops_do(this); The rest looks fine, but
> should maybe be reviewed on hotspot-jfr-dev. Thanks, StefanK
>
>>
>> Thanks,
>> /Erik
>
More information about the hotspot-runtime-dev
mailing list