On Wed, 18 Feb 2026 15:34:02 GMT, Oli Gillespie <[email protected]> wrote:

> Flags passed via a settings file (`.hotspotrc`, or `-XX:Flags=my-file`) do 
> not have the `-XX:` prefix like they would have if passed as command-line 
> args. `JVM_GetVmArguments` then prints these flags also without the prefix, 
> along with command-line flags that _are_ prefixed.
> 
> However, users of `JVM_GetVmArguments` expect the arguments to be in a format 
> that they can pass as command-line args, for example [in CDS 
> static_dump](https://github.com/openjdk/jdk/blob/63f00fff921ed4ac0f595a0a013d399700433a2c/src/java.base/share/classes/jdk/internal/misc/CDS.java#L329-L338)
>  - CDS static_dump currently *does not work* if the main VM uses flags from a 
> settings file.
> 
> So, always add the `-XX:` prefix to flags from settings files in 
> `JVM_GetVmArguments`. Updated existing test to cover this behaviour.
> 
> I looked for existing users of `JVM_GetVmArguments` and they either seem like 
> they'll benefit from this change (CDS, JMH via 
> `RuntimeMXBean.getInputArguments()`) or they won't care.
> 
> **Testing**
> 
> * Updated the existing InputArgument test with a case that verifies the new 
> behaviour.
> * Confirmed that CDS static_dump and JMH now work on a VM with flags from a 
> file.

test/jdk/java/lang/management/RuntimeMXBean/InputArgument.java line 70:

> 68:  * @summary RuntimeMXBean.getInputArguments() handling of flags from 
> settings file.
> 69:  *
> 70:  * @author  Oli Gillespie

We try to avoid introducing new `@author` tags if possible. The git log and git 
blame is good enough for seeing who contributed code to a file.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/29793#discussion_r2823099238

Reply via email to