Skip to content

Commit 46f6bfa

Browse files
committed
Fix for jdk-21+24
1 parent a7f8ce1 commit 46f6bfa

File tree

4 files changed

+18
-2
lines changed

4 files changed

+18
-2
lines changed

openjdk/share/mmtkBarrierSet.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ MMTkBarrierSet::MMTkBarrierSet(MemRegion whole_heap):
9090
(BarrierSetC1*) get_selected_barrier()->create_c1(),
9191
(BarrierSetC2*) get_selected_barrier()->create_c2(),
9292
NULL,
93+
NULL,
9394
BarrierSet::FakeRtti(BarrierSet::ThirdPartyHeapBarrierSet)),
9495
_whole_heap(whole_heap),
9596
_runtime(get_selected_barrier()->create_runtime()) {}

openjdk/share/mmtkBarrierSetC2.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -411,7 +411,7 @@ void MMTkBarrierSetC2::expand_allocate(PhaseMacroExpand* x,
411411
}
412412
}
413413

414-
if (x->C->env()->dtrace_extended_probes()) {
414+
if (x->C->env()->dtrace_alloc_probes()) {
415415
// Slow-path call
416416
int size = TypeFunc::Parms + 2;
417417
CallLeafNode *call = new CallLeafNode(OptoRuntime::dtrace_object_alloc_Type(),

openjdk/share/mmtkHeap.cpp

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
#include "gc/shared/scavengableNMethods.hpp"
3535
#include "gc/shared/strongRootsScope.hpp"
3636
#include "gc/shared/weakProcessor.hpp"
37+
#include "gc/shared/gcLocker.inline.hpp"
3738
#include "logging/log.hpp"
3839
#include "memory/resourceArea.hpp"
3940
#include "mmtk.h"
@@ -332,7 +333,7 @@ void MMTkHeap::initialize_serviceability() {//OK
332333

333334
_mmtk_pool = new MMTkMemoryPool(_start, _end, "MMTk pool", MinHeapSize, false);
334335

335-
_mmtk_manager = new GCMemoryManager("MMTk GC", "end of GC");
336+
_mmtk_manager = new GCMemoryManager("MMTk GC");
336337
_mmtk_manager->add_pool(_mmtk_pool);
337338
}
338339

@@ -459,6 +460,17 @@ bool MMTkHeap::requires_barriers(stackChunkOop obj) const {
459460
return false;
460461
}
461462

463+
void MMTkHeap::pin_object(JavaThread* thread, oop obj) {
464+
// TODO use mmtk-core pin_object
465+
GCLocker::lock_critical(thread);
466+
}
467+
468+
void MMTkHeap::unpin_object(JavaThread* thread, oop obj) {
469+
// TODO use mmtk-core unpin_object
470+
GCLocker::unlock_critical(thread);
471+
}
472+
473+
462474
/*
463475
* files with prints currently:
464476
* collectedHeap.inline.hpp, mmtkHeap.cpp,

openjdk/share/mmtkHeap.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,9 @@ class MMTkHeap : public CollectedHeap {
137137
// Iterate over all objects, calling "cl.do_object" on each.
138138
void object_iterate(ObjectClosure* cl);
139139

140+
void pin_object(JavaThread* thread, oop obj);
141+
void unpin_object(JavaThread* thread, oop obj);
142+
140143
// Similar to object_iterate() except iterates only
141144
// over live objects.
142145
void safe_object_iterate(ObjectClosure* cl) ;

0 commit comments

Comments
 (0)