Integrated: 8299614: Shenandoah: STW mark should keep nmethod/oops referenced from stack chunk alive

Aleksey Shipilev shade at openjdk.org
Wed Sep 13 06:06:54 UTC 2023


On Mon, 11 Sep 2023 18:21:28 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> See the investigation in the bug. Basically, with Loom we have to enable nmethod barriers to get the proper marking of nmethods/oops from stack chunks. See `ShenandoahMarkRefsSuperClosure::do_nmethod` callers and callees for more details. This IMO makes `ShenandoahNMethodBarrier` flag non-optional, as we have to enable nmethod barriers when Loom is enabled. The major part of PR deals with that.
> 
> Additional testing:
>  - [x] Original reproducer does not fail anymore
>  - [x] MacOS AArch64 fastdebug, `hotspot_gc_shenandoah`
>  - [x] Linux AArch64 fastdebug, `hotspot_gc_shenandoah`
>  - [x] Linux x86_64 fastdebug, `hotspot_gc_shenandoah`
>  - [x] Linux AArch64 fastdebug, `tier1 tier2 tier3` with `-XX:+UseShenandoahGC`
>  - [x] Linux x86_64 fastdebug, `tier1 tier2 tier3` with `-XX:+UseShenandoahGC`

This pull request has now been integrated.

Changeset: ece9bdfc
Author:    Aleksey Shipilev <shade at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/ece9bdfc838a5c419c789319ff794f1ae29b0256
Stats:     63 lines in 15 files changed: 31 ins; 17 del; 15 mod

8299614: Shenandoah: STW mark should keep nmethod/oops referenced from stack chunk alive

Reviewed-by: rkennke, zgu

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

PR: https://git.openjdk.org/jdk/pull/15669


More information about the shenandoah-dev mailing list