RFR: 8318098: Update jfr tests with corresponding requires flags [v2]

Markus Grönlund mgronlun at openjdk.org
Tue Nov 19 18:55:48 UTC 2024


On Tue, 19 Nov 2024 18:11:39 GMT, Leonid Mesnik <lmesnik at openjdk.org> wrote:

> The jfr keyword has been used by internal Oracle system only because there were now way to control VM flags by jtreg 10 years ago. This is why I haven't mentioned it in the PR.
> 
> There is a requires tag has been introduced to mark the tests that don't accept certain or any vm flags. It is used in many areas to mark flags sensitive tests so they are not executed for some or any combinations.
> 
> So anyone who executes openjdk jtreg tests, either in Adhoc/locally or using their CI expects that tests are correctly configured and incompatible options are not selected.The only exception is JFR tests . The 'jfr' keyword is not documented and there is no formal and easy way saying to run all SVC tests with ZGC.
> 
> So using requires tag just makes jfr test consistent with all other JDK tests.
> 
> Most of JFR tests don't set very specific combinations and might be executed with all VM flags. So need to mark on incompatible combination. There is no requirement to spent a lot of time trying to improve test for all Compiler/GC combinations, just mark tests that are too specific. And as I mention in the description there are real Hotspot issues that were found by running jfr tests with different options.
> 
> Saying that I believe it makes sense to change how we run JFR tests. So we have the same way for ALL JDK tests.

Why not put vm.flagless on everything then?

Else we find ourselves in situations like the following:

TestPromotionEventWithG1.java
@requires vm.compMode != "Xcomp"

Why is vm.compMode now all of a sudden a requirement for this test? How was it determined that Xcomp should be excluded for this test that tests a PromotionEvent for G1?

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

PR Comment: https://git.openjdk.org/jdk/pull/22249#issuecomment-2486493883


More information about the hotspot-compiler-dev mailing list