changeset 58322:12b01a07515d

8238180: RunThese30M failed "assert(t->jfr_thread_local()->shelved_buffer() == __null) failed: invariant" Reviewed-by: egahlin
author mgronlun
date Tue, 10 Mar 2020 15:44:59 +0100
parents b760fca91d75
children a611125840f0
files src/hotspot/share/jfr/recorder/storage/jfrStorage.cpp
diffstat 1 files changed, 1 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/hotspot/share/jfr/recorder/storage/jfrStorage.cpp	Tue Mar 10 21:43:46 2020 +0800
+++ b/src/hotspot/share/jfr/recorder/storage/jfrStorage.cpp	Tue Mar 10 15:44:59 2020 +0100
@@ -464,7 +464,6 @@
 
 static void assert_flush_regular_precondition(ConstBufferPtr cur, const u1* const cur_pos, size_t used, size_t req, const Thread* t) {
   assert(t != NULL, "invariant");
-  assert(t->jfr_thread_local()->shelved_buffer() == NULL, "invariant");
   assert(cur != NULL, "invariant");
   assert(!cur->lease(), "invariant");
   assert(cur_pos != NULL, "invariant");
@@ -513,7 +512,6 @@
       return cur;
     }
   }
-  assert(t->jfr_thread_local()->shelved_buffer() == NULL, "invariant");
   if (cur->free_size() >= req) {
     // simplest case, no switching of buffers
     if (used > 0) {
@@ -524,6 +522,7 @@
   }
   // Going for a "larger-than-regular" buffer.
   // Shelve the current buffer to make room for a temporary lease.
+  assert(t->jfr_thread_local()->shelved_buffer() == NULL, "invariant");
   t->jfr_thread_local()->shelve_buffer(cur);
   return provision_large(cur, cur_pos, used, req, native, t);
 }