--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp Mon Apr 27 09:08:07 2015 +0200
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp Mon Apr 27 09:51:06 2015 +0200
@@ -54,6 +54,7 @@
#include "runtime/atomic.inline.hpp"
#include "runtime/prefetch.inline.hpp"
#include "services/memTracker.hpp"
+#include "utilities/taskqueue.inline.hpp"
// Concurrent marking bit map wrapper
@@ -3758,6 +3759,10 @@
#endif // _MARKING_STATS_
}
+bool ConcurrentMark::try_stealing(uint worker_id, int* hash_seed, oop& obj) {
+ return _task_queues->steal(worker_id, hash_seed, obj);
+}
+
/*****************************************************************************
The do_marking_step(time_target_ms, ...) method is the building