From 8ae7c22972d82b14d7308e16c26389fa4412727f Mon Sep 17 00:00:00 2001 From: Kunshan Wang Date: Tue, 19 Nov 2024 16:07:22 +0800 Subject: Annotate anonymous mmap Use PR_SET_VMA_ANON_NAME to set human-readable names for anonymous virtual memory areas mapped by `mmap()` when compiled and run on Linux 5.17 or higher. This makes it convenient for developers to debug mmap. --- io_buffer.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'io_buffer.c') diff --git a/io_buffer.c b/io_buffer.c index 64715cbc6c..19c755474a 100644 --- a/io_buffer.c +++ b/io_buffer.c @@ -16,6 +16,7 @@ #include "internal/array.h" #include "internal/bits.h" #include "internal/error.h" +#include "internal/gc.h" #include "internal/numeric.h" #include "internal/string.h" #include "internal/io.h" @@ -83,6 +84,8 @@ io_buffer_map_memory(size_t size, int flags) if (base == MAP_FAILED) { rb_sys_fail("io_buffer_map_memory:mmap"); } + + ruby_annotate_mmap(base, size, "Ruby:io_buffer_map_memory"); #endif return base; -- cgit v1.2.3