[11u] RFR (M) 8217647: JFR: recordings on 32-bit systems unreadable

Aleksey Shipilev shade at redhat.com
Wed Apr 10 09:41:02 UTC 2019


Original bug:
  https://bugs.openjdk.java.net/browse/JDK-8217647

Original fix:
  http://hg.openjdk.java.net/jdk/jdk/rev/0abec72a3ac2

Patch applies to 12u cleanly, but not to 11u. There are two problems:

 a) Missing files, I just skipped them:
  unable to find 'src/hotspot/share/jfr/recorder/repository/jfrChunkRotation.cpp' for patching
  unable to find 'src/hotspot/share/jfr/recorder/repository/jfrChunkRotation.hpp' for patching

 b) Conflict in jfrJniMethod.cpp. Patch wants this:

 NO_TRANSITION(void, jfr_set_file_notification(JNIEnv* env, jobject jvm, jlong threshold))
-  JfrChunkRotation::set_threshold((intptr_t)threshold);
+  JfrChunkRotation::set_threshold(threshold);
 NO_TRANSITION_END

 ...but the 11u code is:

NO_TRANSITION(void, jfr_set_file_notification(JNIEnv* env, jobject jvm, jlong threshold))
  JfrChunkSizeNotifier::set_chunk_size_threshold((size_t)threshold);
NO_TRANSITION_END

 ...and I think it is correct, since it matches the actual JfrChunkSizeNotifier signature in 11u:
   static void set_chunk_size_threshold(size_t bytes);

 ...so I skipped that one too.

11u webrev:
  http://cr.openjdk.java.net/~shade/8217647/webrev.11u.01/

Testing: jdk/jfr on Linux {x86_32, x86_64} -- used to fail in 32 bit, now fully passes

-- 
Thanks,
-Aleksey



More information about the jdk-updates-dev mailing list