Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/mono.d2
-rw-r--r--mono/metadata/sgen-nursery-allocator.c1
2 files changed, 3 insertions, 0 deletions
diff --git a/data/mono.d b/data/mono.d
index efd3a6cb055..8479088c732 100644
--- a/data/mono.d
+++ b/data/mono.d
@@ -30,6 +30,8 @@ provider mono {
probe gc__major__obj__alloc__degraded (void *addr, uintptr_t size, char *class_name);
probe gc__major__obj__alloc__mature (void *addr, uintptr_t size, char *class_name);
+
+ probe gc__nursery__sweeped (void *addr, uintptr_t len);
};
#pragma D attributes Evolving/Evolving/Common provider mono provider
diff --git a/mono/metadata/sgen-nursery-allocator.c b/mono/metadata/sgen-nursery-allocator.c
index c681a1f5a02..fef74c4826a 100644
--- a/mono/metadata/sgen-nursery-allocator.c
+++ b/mono/metadata/sgen-nursery-allocator.c
@@ -712,6 +712,7 @@ add_nursery_frag (SgenFragmentAllocator *allocator, size_t frag_size, char* frag
{
DEBUG (4, fprintf (gc_debug_file, "Found empty fragment: %p-%p, size: %zd\n", frag_start, frag_end, frag_size));
binary_protocol_empty (frag_start, frag_size);
+ MONO_GC_NURSERY_SWEEPED (frag_start, frag_end - frag_start);
/* Not worth dealing with smaller fragments: need to tune */
if (frag_size >= SGEN_MAX_NURSERY_WASTE) {
/* memsetting just the first chunk start is bound to provide better cache locality */