RFR(XS): 8037589: PrintFlagsFinalGetter to testlibrary
Igor Ignatyev
igor.ignatyev at oracle.com
Tue Mar 18 19:28:39 UTC 2014
Vladimir,
I agree w/ you, WB api is better. I've a prototype for such api:
> template <typename T>
> bool SetVMFlag(JavaThread* thread, JNIEnv* env, jstring name, T* value, bool (*TAtPut)(const char*, T*, Flag::Flags)) {
> if (name == NULL) {
> return false;
> }
> ThreadToNativeFromVM ttnfv(thread); // can't be in VM when we call JNI
> const char* flag_name = env->GetStringUTFChars(name, NULL);
> bool result = (*TAtPut)(flag_name, value, Flag::INTERNAL);
> env->ReleaseStringUTFChars(name, flag_name);
> return result;
> }
>
> WB_ENTRY(jboolean, WB_TestSetBooleanVMFlag(JNIEnv* env, jobject o, jstring name, jboolean value))
> bool result = value;
> SetVMFlag <bool> (thread, env, name, &result, &CommandLineFlags::boolAtPut);
> return result;
> WB_END
...
I am going to integrate it as a part of 8028595.
Lev,
does WB api work for you? if yes, you can close 8037589 as a dup of
8028595/8032449.
Igor
On 03/18/2014 10:53 PM, Vladimir Kozlov wrote:
> I don't get why you forking new JVM process to get flags value. It is
> very expensive way to get info.
> Why not use WB api to get flags values? Current JVM should run already
> with all flags specified on command line.
>
> Thanks,
> Vladimir
>
> On 3/18/14 7:31 AM, Lev Priima wrote:
>> info from bug description in jbs:
>> On 03/18/2014 05:58 PM, Igor Ignatyev wrote:
>>> Lev,
>>>
>>> I've uploaded your webrev:
>>> http://cr.openjdk.java.net/~iignatyev/lpriima/8037589/webrev.00/
>>>
>>> What is the common use case for PrintFlagsFinalGetter?
>> when writing test for java products which does not contain JMX(e.g,
>> compact1, compact2) we have to read options of VM. Class
>> com.oracle.java.testlibrary.PrintFlagsFinalGetter may help in testdev
>> with it
>>> I don't understand when you need use getFlagsFinal instead of
>>> getWithVMOpts. So I'd prefer to have one method and use
>>> ProcessTools::executeTestJvm instead of createJavaProcessBuilder
>>> Igor
>>>
>>> On 03/18/2014 05:35 PM, Lev Priima wrote:
>>>> Please review and help me with integration:
>>>>
>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8037589
>>>> Webrev: in attachment
>>>>
>> Lev
More information about the hotspot-compiler-dev
mailing list