On Wed, 17 Jul 2024 03:37:36 GMT, Vladimir Kozlov <k...@openjdk.org> wrote:
> Citing David Holmes from bug report: > "We provided the ability to leave out certain VM services (JVMTI, GC's other > than serial, ...) as part of the design of the MinimalVM to support Java SE > Embedded, along with the Compact Profiles of JDK 8. This manifested in the > source code as a set of INCLUDE_XXX ifdef guards. The build system later > exposed these as individual --with-jvm-features=xxx,yyy support. However, it > was never intended (and certainly not tested) that you could mix-and-match > arbitrary subsets of these VM features at will. Consequently if you start > trying to do this you will find things that need fixing." > > I added `INCLUDE_JVMTI` guards in two places where it was missed: JVMCI and > JFR. Affected code was added recently, in the past year. After that I was > able to build VM on all supported platforms. > > Note: building VM without JVMTI is not officially supported feature. We are > not testing it and such failures (missing guards) are not unexpected. > > A lot of tests failed with VM without JVMTI. All are expected failures. I > listed failed tests in bug report. > I fixed (added requires `vm.jvmti`) only one which was part of > [JDK-8257967](https://bugs.openjdk.org/browse/JDK-8257967) changes which > introduced JFR code without `INCLUDE_JVMTI` guards. > > I ran 2 rounds of testing: > > First, only **tier1** with VM built without JVMTI to see if builds passed and > which tests affected. I wrote comment in bug report which tests failed (all > expected to fail without JVMTI). > > Second round of testing with JVMTI in VM: tier1-4 Looks okay. ------------- Marked as reviewed by shade (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/20209#pullrequestreview-2182317512