From d949e8969c61ef12330ed097acf4005fb8e83593 Mon Sep 17 00:00:00 2001 From: Kunal Sareen Date: Wed, 7 Jun 2023 06:42:33 +0000 Subject: [PATCH 1/3] Rename ambiguous `scan_thread_root{,s}` functions --- mmtk/Cargo.toml | 2 +- mmtk/src/lib.rs | 4 ++-- mmtk/src/scanning.rs | 8 ++++---- openjdk/mmtk.h | 4 ++-- openjdk/mmtkHeap.cpp | 2 +- openjdk/mmtkHeap.hpp | 2 +- openjdk/mmtkUpcalls.cpp | 10 +++++----- 7 files changed, 16 insertions(+), 16 deletions(-) diff --git a/mmtk/Cargo.toml b/mmtk/Cargo.toml index ba91f9d5..c37cd8b1 100644 --- a/mmtk/Cargo.toml +++ b/mmtk/Cargo.toml @@ -30,7 +30,7 @@ once_cell = "1.10.0" # - change branch # - change repo name # But other changes including adding/removing whitespaces in commented lines may break the CI. -mmtk = { git = "https://github.com/mmtk/mmtk-core.git", rev = "2ec37bde7955304f3e4bc5f7bed3fbfba3833cc0" } +mmtk = { git = "https://github.com/k-sareen/mmtk-core.git", rev = "2d035a00b33e472427d3349b05ac1c27bc36165b" } # Uncomment the following to build locally # mmtk = { path = "../repos/mmtk-core" } diff --git a/mmtk/src/lib.rs b/mmtk/src/lib.rs index d4847d5c..e501c64f 100644 --- a/mmtk/src/lib.rs +++ b/mmtk/src/lib.rs @@ -98,8 +98,8 @@ pub struct OpenJDK_Upcalls { pub referent_offset: extern "C" fn() -> i32, pub discovered_offset: extern "C" fn() -> i32, pub dump_object_string: extern "C" fn(object: ObjectReference) -> *const c_char, - pub scan_all_thread_roots: extern "C" fn(closure: EdgesClosure), - pub scan_thread_roots: extern "C" fn(closure: EdgesClosure, tls: VMMutatorThread), + pub scan_roots_in_all_mutator_threads: extern "C" fn(closure: EdgesClosure), + pub scan_roots_in_mutator_thread: extern "C" fn(closure: EdgesClosure, tls: VMMutatorThread), pub scan_universe_roots: extern "C" fn(closure: EdgesClosure), pub scan_jni_handle_roots: extern "C" fn(closure: EdgesClosure), pub scan_object_synchronizer_roots: extern "C" fn(closure: EdgesClosure), diff --git a/mmtk/src/scanning.rs b/mmtk/src/scanning.rs index 17192e9c..07ceb7a4 100644 --- a/mmtk/src/scanning.rs +++ b/mmtk/src/scanning.rs @@ -58,20 +58,20 @@ impl Scanning for VMScanning { // TODO } - fn scan_thread_roots(_tls: VMWorkerThread, mut factory: impl RootsWorkFactory) { + fn scan_roots_in_all_mutator_threads(_tls: VMWorkerThread, mut factory: impl RootsWorkFactory) { unsafe { - ((*UPCALLS).scan_all_thread_roots)(to_edges_closure(&mut factory)); + ((*UPCALLS).scan_roots_in_all_mutator_threads)(to_edges_closure(&mut factory)); } } - fn scan_thread_root( + fn scan_roots_in_mutator_thread( _tls: VMWorkerThread, mutator: &'static mut Mutator, mut factory: impl RootsWorkFactory, ) { let tls = mutator.get_tls(); unsafe { - ((*UPCALLS).scan_thread_roots)(to_edges_closure(&mut factory), tls); + ((*UPCALLS).scan_roots_in_mutator_thread)(to_edges_closure(&mut factory), tls); } } diff --git a/openjdk/mmtk.h b/openjdk/mmtk.h index 1f6076ce..88c96d49 100644 --- a/openjdk/mmtk.h +++ b/openjdk/mmtk.h @@ -163,8 +163,8 @@ typedef struct { int (*referent_offset) (); int (*discovered_offset) (); char* (*dump_object_string) (void* object); - void (*scan_all_thread_roots)(EdgesClosure closure); - void (*scan_thread_roots)(EdgesClosure closure, void* tls); + void (*scan_roots_in_all_mutator_threads)(EdgesClosure closure); + void (*scan_roots_in_mutator_thread)(EdgesClosure closure, void* tls); void (*scan_universe_roots) (EdgesClosure closure); void (*scan_jni_handle_roots) (EdgesClosure closure); void (*scan_object_synchronizer_roots) (EdgesClosure closure); diff --git a/openjdk/mmtkHeap.cpp b/openjdk/mmtkHeap.cpp index 6a573f74..4197f64d 100644 --- a/openjdk/mmtkHeap.cpp +++ b/openjdk/mmtkHeap.cpp @@ -415,7 +415,7 @@ void MMTkHeap::scan_vm_thread_roots(OopClosure& cl) { VMThread::vm_thread()->oops_do(&cl, NULL); } -void MMTkHeap::scan_thread_roots(OopClosure& cl) { +void MMTkHeap::scan_roots_in_all_mutator_threads(OopClosure& cl) { ResourceMark rm; Threads::possibly_parallel_oops_do(false, &cl, NULL); } diff --git a/openjdk/mmtkHeap.hpp b/openjdk/mmtkHeap.hpp index 55369244..e01dfaf9 100644 --- a/openjdk/mmtkHeap.hpp +++ b/openjdk/mmtkHeap.hpp @@ -195,7 +195,7 @@ class MMTkHeap : public CollectedHeap { void scan_roots(OopClosure& cl); - void scan_thread_roots(OopClosure& cl); + void scan_roots_in_all_mutator_threads(OopClosure& cl); void scan_universe_roots(OopClosure& cl); void scan_jni_handle_roots(OopClosure& cl); diff --git a/openjdk/mmtkUpcalls.cpp b/openjdk/mmtkUpcalls.cpp index 7059a0ca..5f1350d0 100644 --- a/openjdk/mmtkUpcalls.cpp +++ b/openjdk/mmtkUpcalls.cpp @@ -184,12 +184,12 @@ static void mmtk_get_mutators(MutatorClosure closure) { } } -static void mmtk_scan_all_thread_roots(EdgesClosure closure) { +static void mmtk_scan_roots_in_all_mutator_threads(EdgesClosure closure) { MMTkRootsClosure2 cl(closure); - MMTkHeap::heap()->scan_thread_roots(cl); + MMTkHeap::heap()->scan_roots_in_all_mutator_threads(cl); } -static void mmtk_scan_thread_roots(EdgesClosure closure, void* tls) { +static void mmtk_scan_roots_in_mutator_thread(EdgesClosure closure, void* tls) { ResourceMark rm; JavaThread* thread = (JavaThread*) tls; MMTkRootsClosure2 cl(closure); @@ -334,8 +334,8 @@ OpenJDK_Upcalls mmtk_upcalls = { referent_offset, discovered_offset, dump_object_string, - mmtk_scan_all_thread_roots, - mmtk_scan_thread_roots, + mmtk_scan_roots_in_all_mutator_threads, + mmtk_scan_roots_in_mutator_thread, mmtk_scan_universe_roots, mmtk_scan_jni_handle_roots, mmtk_scan_object_synchronizer_roots, From 3d09af98459f159f3d610ad134a8bac9907c535f Mon Sep 17 00:00:00 2001 From: Kunal Sareen Date: Wed, 7 Jun 2023 06:51:56 +0000 Subject: [PATCH 2/3] cargo fmt --- mmtk/src/scanning.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mmtk/src/scanning.rs b/mmtk/src/scanning.rs index 07ceb7a4..aa1a5dba 100644 --- a/mmtk/src/scanning.rs +++ b/mmtk/src/scanning.rs @@ -58,7 +58,10 @@ impl Scanning for VMScanning { // TODO } - fn scan_roots_in_all_mutator_threads(_tls: VMWorkerThread, mut factory: impl RootsWorkFactory) { + fn scan_roots_in_all_mutator_threads( + _tls: VMWorkerThread, + mut factory: impl RootsWorkFactory, + ) { unsafe { ((*UPCALLS).scan_roots_in_all_mutator_threads)(to_edges_closure(&mut factory)); } From e497dfb969f4e7af863a3a23704f58e2f851478d Mon Sep 17 00:00:00 2001 From: Kunshan Wang Date: Wed, 7 Jun 2023 23:49:54 +0800 Subject: [PATCH 3/3] Update Cargo.toml --- mmtk/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mmtk/Cargo.toml b/mmtk/Cargo.toml index c37cd8b1..29e28a66 100644 --- a/mmtk/Cargo.toml +++ b/mmtk/Cargo.toml @@ -30,7 +30,7 @@ once_cell = "1.10.0" # - change branch # - change repo name # But other changes including adding/removing whitespaces in commented lines may break the CI. -mmtk = { git = "https://github.com/k-sareen/mmtk-core.git", rev = "2d035a00b33e472427d3349b05ac1c27bc36165b" } +mmtk = { git = "https://github.com/mmtk/mmtk-core.git", rev = "f1a0bb7fbec97dd84e35a40e8be01cf5018f2f9e" } # Uncomment the following to build locally # mmtk = { path = "../repos/mmtk-core" }