RFR (S): 8191894: Refactor weak references in JvmtiTagHashmap to use the Access API
coleen.phillimore at oracle.com
coleen.phillimore at oracle.com
Mon Nov 27 18:21:34 UTC 2017
http://cr.openjdk.java.net/~eosterlund/8191894/webrev.00/src/hotspot/share/prims/jvmtiTagMap.cpp.udiff.html
+ return RootAccess<ON_PHANTOM_OOP_REF |
AS_NO_KEEPALIVE>::oop_load(object_addr());
Why is this not access ON_ROOT{_CONCURRENT} ? The thing holding the
object that you are peeking at is not in the Java Heap?
thanks,
Coleen
On 11/27/17 6:28 AM, Erik Österlund wrote:
> Hi,
>
> The JVMTI tag hashmap has weak oop references that are handled using
> raw oop accesses and a G1-specific SATB enqueue call when leaking out
> objects from the tag map, requiring them to be marked as live by G1.
>
> This should now be refactored to use the Access API to annotate that
> these are ON_PHANTOM_OOP_REF, and refactor the raw oop loads to use
> ON_PHANTOM_OOP_REF | AS_NO_KEEPALIVE.
>
> Webrev:
> http://cr.openjdk.java.net/~eosterlund/8191894/webrev.00/
>
> Bug:
> https://bugs.openjdk.java.net/browse/JDK-8191894
>
> Thanks,
> /Erik
More information about the hotspot-runtime-dev
mailing list