diff src/share/vm/gc_implementation/g1/ptrQueue.hpp @ 12835:69944b868a32

8014555: G1: Memory ordering problem with Conc refinement and card marking Summary: Add a StoreLoad barrier in the G1 post-barrier to fix a race with concurrent refinement. Also-reviewed-by: martin.doerr@sap.com Reviewed-by: iveresov, tschatzl, brutisso, roland, kvn
author mgerdin
date Tue, 08 Oct 2013 17:35:51 +0200
parents 69f26e8e09f9
children de6a9e811145
line wrap: on
line diff
--- a/src/share/vm/gc_implementation/g1/ptrQueue.hpp	Fri Oct 04 13:33:02 2013 +0200
+++ b/src/share/vm/gc_implementation/g1/ptrQueue.hpp	Tue Oct 08 17:35:51 2013 +0200
@@ -80,6 +80,10 @@
 
   void reset() { if (_buf != NULL) _index = _sz; }
 
+  void enqueue(volatile void* ptr) {
+    enqueue((void*)(ptr));
+  }
+
   // Enqueues the given "obj".
   void enqueue(void* ptr) {
     if (!_active) return;