RFR(XL): 8199712: Flight Recorder
Vladimir Kozlov
vladimir.kozlov at oracle.com
Thu Apr 26 16:07:12 UTC 2018
-lkstat was also used to determine SPARC CPU features as I remember.
Vladimir
On 4/26/18 9:03 AM, Erik Joelsson wrote:
> Should linking to the -lkstat library be conditional on jfr feature
> being set, or perhaps it doesn't matter that much. In that case, adding
> the library could be done in JvmFeatures.gmk instead.
>
> /Erik
>
>
> On 2018-04-26 02:45, Magnus Ihse Bursie wrote:
>>
>> On 2018-04-25 13:06, Erik Gahlin wrote:
>>> Greetings,
>>>
>>> Could I have a review of 8199712: Flight Recorder
>>>
>>> As mentioned in the preview [1] the tracing backend has been removed.
>>> Event metadata has been consolidated into a single XML file and event
>>> classes are now generated by GenerateJfrFiles.java.
>>>
>>> Tests have been run on Linux-x64, Windows-x64 and MaxOSX-x64.
>>>
>>> For details about the feature, see the JEP:
>>> https://bugs.openjdk.java.net/browse/JDK-8193393
>>>
>>> Webrev:
>>> http://cr.openjdk.java.net/~egahlin/8199712.0/
>> Hi Erik,
>>
>> When posting build changes (files in "make/*"), please always include
>> build-dev. Thanks! :-)
>>
>> This review is for build changes only.
>>
>> * make/RunTestsPrebuiltSpec.gmk: This file has only a copyright year
>> change. It can be reverted.
>>
>> * make/copy/Copy-jdk.jfr.gmk:
>> COPY_HOTSPOT_TRACE_FILES should be renamed to something like
>> COPY_JFR_METADATA.
>>
>> The second part is better off rewritten using SetupCopyFiles.
>>
>> Something like this, written on-the-fly, so might not work. (Email me
>> privately if it does not work and you need help.)
>>
>> JFR_CONF_DIR := $(TOPDIR)/src/jdk.jfr/share/conf/jfr
>>
>> $(eval $(call SetupCopyFiles, COPY_JFR_CONF, \
>> DEST := $(LIB_DST_DIR)/jfr, \
>> FILES := $(wildcard $(JFR_CONF_DIR)/*.jfc), \
>> FLATTEN := true, \
>> ))
>>
>> TARGETS += $(COPY_JFR_CONF)
>>
>> * make/autoconf/hotspot.m4:
>> It's a bit unfortunate with the --enable-jfr option. Ideally, this
>> should be handled only as a JVM feature (--with-jvm-features=jfr). Try
>> this piece of code instead: (Not tested, but should work.)
>>
>> diff --git a/make/autoconf/hotspot.m4 b/make/autoconf/hotspot.m4
>> --- a/make/autoconf/hotspot.m4
>> +++ b/make/autoconf/hotspot.m4
>> @@ -26,7 +26,7 @@
>> # All valid JVM features, regardless of platform
>> VALID_JVM_FEATURES="compiler1 compiler2 zero minimal dtrace jvmti
>> jvmci \
>> graal vm-structs jni-check services management all-gcs nmt cds \
>> - static-build link-time-opt aot"
>> + static-build link-time-opt aot jfr"
>>
>> # All valid JVM variants
>> VALID_JVM_VARIANTS="server client minimal core zero custom"
>> @@ -313,6 +313,11 @@
>> AC_MSG_ERROR([Specified JVM feature 'vm-structs' requires feature
>> 'all-gcs'])
>> fi
>>
>> + # Enable JFR by default, except on linux-sparcv9 and on minimal.
>> + if test "x$OPENJDK_TARGET_OS" != xlinux || test
>> "x$OPENJDK_TARGET_CPU" != xsparcv9; then
>> + NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES jfr"
>> + fi
>> +
>> # Turn on additional features based on other parts of configure
>> if test "x$INCLUDE_DTRACE" = "xtrue"; then
>> JVM_FEATURES="$JVM_FEATURES dtrace"
>>
>> Otherwise, build changes look good!
>>
>> /Magnus
>>
>>
>>>
>>> Bug:
>>> https://bugs.openjdk.java.net/browse/JDK-8199712
>>>
>>> [1]
>>> http://mail.openjdk.java.net/pipermail/hotspot-dev/2018-April/031359.html
>>>
>>>
>>> Thanks
>>> Erik and Markus
>>
>
More information about the hotspot-jfr-dev
mailing list