Hi Daniil,

It looks good in general.

I have two comments though.

-vmTestbase/nsk/jvmti/unit/ForceEarlyReturn/earlyretbase/TestDescription.java       8195635   generic-all
  It is not a good idea to remove the test from the ProblemList before the 8195635 is fixed.

 148     if(method == midActiveMethod) {
 149         printf("<<<<<<<< SuspendThread() is successfully done\n");
 150     } else {
 151         printf("Warning: method \"activeMethod\" was missed\n");
 152         errCode = STATUS_FAILED;
 153     }
 I'd suggest to tweak the error message to something like:
   "Failed in the suspThread: was not able to suspend thread with the activeMethod() on top\n");


Thanks,
Serguei



On 11/30/18 19:08, Daniil Titov wrote:
Please review the change for nsk/jvmti/unit/ForceEarlyReturn/earlyretbase test. The problem here is that before doing an early force return the test doesn't check that the test thread is suspended at a right place where the top frame executes the test method rather than JVMCI code triggered by invocation counter overflow. That results in the early return happens for a wrong method and the test fails.

The fix changes the test to do resume/suspend in the loop until the target method is executed in the top frame or the loop counter exceeds the limit.

There is another problem with this test that requires changes on VM side and is currently covered by JDK-8195635:" [Graal] nsk/jvmti/unit/ForceEarlyReturn/earlyretbase crashes with assertion "compilation level out of bounds"".  The test will have to be removed from test/hotspot/jtreg/ProblemList-graal.txt only after both these issues are fixed. 

Bug: https://bugs.openjdk.java.net/browse/JDK-8214572
Webrev: http://cr.openjdk.java.net/~dtitov/8214572/webrev.01/ 

Thanks,
Daniil







Reply via email to