[jdk11u-dev] RFR: 8269661: JNI_GetStringCritical does not lock char array [v3]
Zhengyu Gu
zgu at openjdk.java.net
Thu Jul 15 12:32:54 UTC 2021
> I would like to backport this patch to openjdk11u.
>
> This patch mainly impacts Shenandoah GC, which is the only GC that supports object pinning and string deduplication.
>
> The original patch does not apply cleanly, because it uses new string deduplication API introduced in jdk17. openjdk11u cannot prevent a string from being deduplicated, so it risks the possibility that string deduplication modifies string value while string critical session is in progress.
>
> I purpose to take an alternative approach in openjdk11u: return a copy of string value when object pinning + string deduplication is enabled.
>
> Test:
> - [x] tier1 with UseShenandoahGC + UseStringDeduplication on Linux x86_64.
Zhengyu Gu has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains five additional commits since the last revision:
- Aleksey's new comments
- Merge branch 'master' into backport-8269661
- Aleksey's comment
- v1
- v0
-------------
Changes:
- all: https://git.openjdk.java.net/jdk11u-dev/pull/109/files
- new: https://git.openjdk.java.net/jdk11u-dev/pull/109/files/ac6da026..6fe5d961
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk11u-dev&pr=109&range=02
- incr: https://webrevs.openjdk.java.net/?repo=jdk11u-dev&pr=109&range=01-02
Stats: 2415 lines in 43 files changed: 1103 ins; 831 del; 481 mod
Patch: https://git.openjdk.java.net/jdk11u-dev/pull/109.diff
Fetch: git fetch https://git.openjdk.java.net/jdk11u-dev pull/109/head:pull/109
PR: https://git.openjdk.java.net/jdk11u-dev/pull/109
More information about the jdk-updates-dev
mailing list