RFR: 8374233: Overloaded constructor MountUnmountDisabler(jthread thread) is missed

Serguei Spitsyn sspitsyn at openjdk.org
Tue Dec 23 22:25:03 UTC 2025


On Tue, 23 Dec 2025 17:06:30 GMT, Serguei Spitsyn <sspitsyn at openjdk.org> wrote:

> Please, review a simple fix for a jdk 26 regression: [JDK-8364343](https://bugs.openjdk.org/browse/JDK-8364343). It will be pushed to 27 first and then back ported to 26.
> This issue impacts JVM TI scalability. The  [JDK-8364343](https://bugs.openjdk.org/browse/JDK-8364343) replaced the overloaded ctor `MountUnmountDisabler(jthread thread)` with `MountUnmountDisabler(oop thread_oop)`. This caused the most common JVM TI pattern `MountUnmountDisabler disabler(thread)` (where thread is a jthread) to be resolved to `MountUnmountDisabler(bool exclusive)`.  It makes the instantiated `MountUnmountDisabler` to disable `mount/unmount` transitions for all virtual thread instead of the specific one. This problem was identified with a minor tracing.
> 
> The fix restores the original ctor `MountUnmountDisabler(jthread thread)`.
> 
> Testing:
>  - TBD: run mach5 tiers 1-6

Chris and Alex, thank you for review!

-------------

PR Comment: https://git.openjdk.org/jdk/pull/28965#issuecomment-3688117415


More information about the serviceability-dev mailing list