[前][次][番号順一覧][スレッド一覧]

ruby-changes:68551

From: Aaron <ko1@a...>
Date: Thu, 21 Oct 2021 07:06:55 +0900 (JST)
Subject: [ruby-changes:68551] b0c3f18ec5 (master): Print errno when mprotect fails

https://git.ruby-lang.org/ruby.git/commit/?id=b0c3f18ec5

From b0c3f18ec519d505527e1929e25ec264c831a89e Mon Sep 17 00:00:00 2001
From: Aaron Patterson <tenderlove@r...>
Date: Wed, 20 Oct 2021 12:42:40 -0700
Subject: Print errno when mprotect fails

Trying to figure out the problem on s390x.
---
 gc.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gc.c b/gc.c
index fdd4ac5eb3..4451218f71 100644
--- a/gc.c
+++ b/gc.c
@@ -4870,7 +4870,7 @@ lock_page_body(rb_objspace_t *objspace, struct heap_page_body *body) https://github.com/ruby/ruby/blob/trunk/gc.c#L4870
 #else
     if (mprotect(body, HEAP_PAGE_SIZE, PROT_NONE)) {
 #endif
-        rb_bug("Couldn't protect page %p", (void *)body);
+        rb_bug("Couldn't protect page %p, errno: %s", (void *)body, strerror(errno));
     }
     else {
         gc_report(5, objspace, "Protecting page in move %p\n", (void *)body);
@@ -4887,7 +4887,7 @@ unlock_page_body(rb_objspace_t *objspace, struct heap_page_body *body) https://github.com/ruby/ruby/blob/trunk/gc.c#L4887
 #else
     if (mprotect(body, HEAP_PAGE_SIZE, PROT_READ | PROT_WRITE)) {
 #endif
-        rb_bug("Couldn't unprotect page %p", (void *)body);
+        rb_bug("Couldn't unprotect page %p, errno: %s", (void *)body, strerror(errno));
     }
     else {
         gc_report(5, objspace, "Unprotecting page in move %p\n", (void *)body);
-- 
cgit v1.2.1


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]