< prev index next >

src/hotspot/share/gc/shenandoah/shenandoahPacer.cpp

Print this page

        

@@ -208,11 +208,11 @@
     if (cur < tax && !force) {
       // Progress depleted, alas.
       return false;
     }
     new_val = cur - tax;
-  } while (Atomic::cmpxchg(new_val, &_budget, cur) != cur);
+  } while (Atomic::cmpxchg(&_budget, cur, new_val) != cur);
   return true;
 }
 
 void ShenandoahPacer::unpace_for_alloc(intptr_t epoch, size_t words) {
   assert(ShenandoahPacing, "Only be here when pacing is enabled");
< prev index next >