RFR: 8156762: compiler/ciReplay/TestVM_no_comp_level.java fails with - 'Unexpected exit code for negative case: [-client]: expected 0 to not equal 0'

Zoltán Majó zoltan.majo at oracle.com
Thu Dec 8 08:25:04 UTC 2016


Hi Rahul,


can you please move the else on line 71 to line 70 (to the same line 
with the closing '}')?

   68             if (SERVER_VM_AVAILABLE) {
   69                 negativeTest(CLIENT_VM_OPTION);
   70             }
   71             else {
   72                 positiveTest(CLIENT_VM_OPTION);
   73             }

Otherwise it looks good to me.

Thank you!

Best regards,


Zoltan

On 12/08/2016 09:10 AM, Rahul Raghavan wrote:
> Hi,
>
> Please review following patch for JDK-8156762.
> <webrev.00> -  http://cr.openjdk.java.net/~rraghavan/8156762/webrev.00/
>
> <jbs> - https://bugs.openjdk.java.net/browse/JDK-8156762
>
> Please note that JDK-8156762 is an Oracle closed bug,
>    reporting failure for hotspot/test/compiler/ciReplay/TestVM_no_comp_level.sh
>    for build configuration with only Client VM.
>
> Understood the test scenario as
>      - force JVM to generate test_replay.txt file
>      - remove compilation level from test_replay.txt file
>      - then check replay the modified test_replay.txt
>
> Above proposed test fix in webrev.00 -
>      [test/compiler/ciReplay/TestVMNoCompLevel.java]
>          ..............
>          public void testAction() {
>              ......
>              ......
>              if (CLIENT_VM_AVAILABLE) {
>      -           negativeTest(CLIENT_VM_OPTION);
>      +           if (SERVER_VM_AVAILABLE) {
>      +               negativeTest(CLIENT_VM_OPTION);
>      +           }
>      +           else {
>      +               positiveTest(CLIENT_VM_OPTION);
>      +           }
>              }
>              if (SERVER_VM_AVAILABLE) {
>                  positiveTest(TIERED_DISABLED_VM_OPTION, SERVER_VM_OPTION);
>                  positiveTest(TIERED_ENABLED_VM_OPTION, SERVER_VM_OPTION);
>              }
>          }
>          ..............
>
> The test was written expecting VM to crash always in Client VM available case,
>    when replay the modified test_replay.txt without compilation level.
> But found this is not true because a default compiler level of highest available level value is always used, if the same is missing,
>    to support older version of Compiler replay without compiler level support.
> [process_compile() - hotspot\src\share\vm\ci\ciReplay.cpp]
>
> So for the reported case if ONLY CLIENT_VM_AVAILABLE is true -
> Originally in test, VM was expected to crash always here.
> Found this is wrong due to the setting of default compiler level
>    to highest available level value in process_compile() - which is 'CompLevel_simple' in this case.
> So for ONLY CLIENT_VM_AVAILABLE case the VM will not crash at 'is_valid_comp_level()',
>    going ahead with replaying the modified test_replay.txt with -client option.
> (.i.e.   positiveTest(-client) is required)
>
> For the case with if both CLIENT_VM_AVAILABLE and SERVER_VM_AVAILABLE are true,
> when test_replay.txt without compilation level is used,
> the default compiler level assigned in process_compile() will be 'CompLevel_full_optimization'.
> So when attempted replay the modified test_replay.txt with -client option,
>    the VM should fail  for 'if (CLIENT_VM_AVAILABLE)' block at -
>       if (!TieredCompilation && (comp_level != CompLevel_highest_tier)) check [is_valid_comp_level()]
> (.i.e.   negativeTest(-client) is required)
>
> The further testing for SERVER_VM_AVAILABLE is not touched
> and any how will always continue with required tiered disable/enabled , -server options.
>
> No issues with testing for various targets.
>
> Thanks,
> Rahul



More information about the hotspot-compiler-dev mailing list