jmx-dev RFR: 8264285: Clean the modification of ccstr JVM flags [v4]
Ioi Lam
iklam at openjdk.java.net
Thu Apr 1 15:27:54 UTC 2021
> There are two versions of JVMFlagAccess::ccstrAtPut() for modifying JVM flags of the ccstr type (i.e., strings).
>
> - One version requires the caller to free the old value, but some callers don't do that (writeableFlags.cpp).
> - The other version frees the old value on behalf of the caller. However, this version is accessible only via FLAG_SET_XXX macros and is currently unused. So it's unclear whether it actually works.
>
> We should combine these two versions into a single function, fix problems in the callers, and add test cases. The old value should be freed automatically, because typically the caller isn't interested in the old value.
>
> Note that the FLAG_SET_XXX macros do not return the old value. Requiring the caller of FLAG_SET_XXX to free the old value would be tedious and error prone.
Ioi Lam 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:
- Merge branch 'master' into 8264285-clean-up-setting-ccstr-jvm-flags
- Revert "relax flag attributions (ala JDK-7123237)"
This reverts commit 673aaafc4860dd7f70a3f222422ae84e85fd4219.
- relax flag attributions (ala JDK-7123237)
- restored SET_FLAG_XXX for ccstr type, and fixed bugs in existing ccstr modification code
- 8264285: Do not support FLAG_SET_XXX for VM flags of string type
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/3254/files
- new: https://git.openjdk.java.net/jdk/pull/3254/files/2a5e2b19..5f912221
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3254&range=03
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3254&range=02-03
Stats: 8053 lines in 376 files changed: 5492 ins; 1012 del; 1549 mod
Patch: https://git.openjdk.java.net/jdk/pull/3254.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/3254/head:pull/3254
PR: https://git.openjdk.java.net/jdk/pull/3254
More information about the jmx-dev
mailing list