[8u] RFR 8219370: NMT: Move synchronization primitives from mtInternal to mtSynchronizer

Andrew John Hughes gnu.andrew at redhat.com
Wed Aug 21 20:49:36 UTC 2019

On 20/08/2019 12:48, Zhengyu Gu wrote:
> I would like to backport this patch to 8u.
> This patch aggregated synchronization primitives under a new memory
> category, which improves NMT usability.
> The patch does not apply cleanly, due to:
> 1) PlatformMonitor is not in 8u code base
> 2) PlatformEvent and PlatformParker have yet been factored out to Posix
> for compliant OSs
> 3) semaphore is defined as StackObj in 8u
> 4) Memory type declaration is not compatible
> Original bug: https://bugs.openjdk.java.net/browse/JDK-8219370
> original code review:
> https://mail.openjdk.java.net/pipermail/hotspot-runtime-dev/2019-February/032684.html
> 8u Webrev:
> http://cr.openjdk.java.net/~zgu/JDK-8219370-8u/webrev.00/index.html
> Thanks,
> -Zhengyu

Patch mostly looks good.

With regard to the memory type declaration, I would if it would be
simpler to just make a similar change as JDK-8208499 [0] (which I see
you already backported to 11u) as part of this and cleanup that enum,
removing the explicit values? The changes to allocation.hpp and
memTracker.cpp look pretty independent of the rest and could be
incorporated into this backport.

JDK-8174231 [1] may also be worth a backport long term, to factor out
the common POSIX PlatformEvent code.

[0] https://hg.openjdk.java.net/jdk/jdk/rev/cf34c71ca27c
[1] https://bugs.openjdk.java.net/browse/JDK-8174231
Andrew :)

Senior Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

PGP Key: ed25519/0xCFDA0F9B35964222 (hkp://keys.gnupg.net)
Fingerprint = 5132 579D D154 0ED2 3E04  C5A0 CFDA 0F9B 3596 4222

More information about the jdk8u-dev mailing list