From a1b5d493d0aa9bd14a5be253f1db2946719f9206 Mon Sep 17 00:00:00 2001 From: Jay Krell Date: Wed, 28 Aug 2019 01:54:00 -0700 Subject: [PATCH] [mini] Cleanup MONO_MMAP_32BIT. (mono/mono#16469) - It _presumably_ means nothing on 32bit ARM and 32bit MIPS (was there mono/mips64?). - Leaving only PowerPC32 and PowerPC64 (in this vicinity). - It presumably means nothing on PowerPC32. - Leaving PowerPC64 as the only user in this vicinity -- is it needed? - Notice this is varyingly absent on x86, arm64, amd64, s390x. Subject of another PR maybe. Perhaps this was to enable the debugger to be 32bit against a 64bit target on a biarch system, so it could do a cross-process manipulation of these pages? That makes some sense on Windows at least. (32bit debugger cannot debug 64bit target as of Vista, but that is using the Win32 "hard" debugger API. Mono could do otherwise). There remains amd64 mono-codeman.c define ARCH_MAP_FLAGS MONO_MMAP_32BIT left alone. Commit migrated from https://github.com/mono/mono/commit/0375acd7c8b1634a44477f2a561a10cd4d01858a --- src/mono/mono/mini/mini-arm.c | 4 ++-- src/mono/mono/mini/mini-mips.c | 4 ++-- src/mono/mono/mini/mini-ppc.c | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/mono/mono/mini/mini-arm.c b/src/mono/mono/mini/mini-arm.c index 6215391..c384c46 100644 --- a/src/mono/mono/mini/mini-arm.c +++ b/src/mono/mono/mini/mini-arm.c @@ -810,8 +810,8 @@ mono_arch_init (void) if (!mono_aot_only) breakpoint_tramp = mini_get_breakpoint_trampoline (); } else { - ss_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ|MONO_MMAP_32BIT, MONO_MEM_ACCOUNT_OTHER); - bp_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ|MONO_MMAP_32BIT, MONO_MEM_ACCOUNT_OTHER); + ss_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ, MONO_MEM_ACCOUNT_OTHER); + bp_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ, MONO_MEM_ACCOUNT_OTHER); mono_mprotect (bp_trigger_page, mono_pagesize (), 0); } diff --git a/src/mono/mono/mini/mini-mips.c b/src/mono/mono/mini/mini-mips.c index 5f3d24e..a348950 100644 --- a/src/mono/mono/mini/mini-mips.c +++ b/src/mono/mono/mini/mini-mips.c @@ -686,8 +686,8 @@ mono_arch_init (void) { mono_os_mutex_init_recursive (&mini_arch_mutex); - ss_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ|MONO_MMAP_32BIT, MONO_MEM_ACCOUNT_OTHER); - bp_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ|MONO_MMAP_32BIT, MONO_MEM_ACCOUNT_OTHER); + ss_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ, MONO_MEM_ACCOUNT_OTHER); + bp_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ, MONO_MEM_ACCOUNT_OTHER); mono_mprotect (bp_trigger_page, mono_pagesize (), 0); } diff --git a/src/mono/mono/mini/mini-ppc.c b/src/mono/mono/mini/mini-ppc.c index a2808c3..fc8851e 100644 --- a/src/mono/mono/mini/mini-ppc.c +++ b/src/mono/mono/mini/mini-ppc.c @@ -580,8 +580,8 @@ mono_arch_init (void) mono_os_mutex_init_recursive (&mini_arch_mutex); - ss_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ|MONO_MMAP_32BIT, MONO_MEM_ACCOUNT_OTHER); - bp_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ|MONO_MMAP_32BIT, MONO_MEM_ACCOUNT_OTHER); + ss_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ, MONO_MEM_ACCOUNT_OTHER); + bp_trigger_page = mono_valloc (NULL, mono_pagesize (), MONO_MMAP_READ, MONO_MEM_ACCOUNT_OTHER); mono_mprotect (bp_trigger_page, mono_pagesize (), 0); // FIXME: Fix partial sharing for power and remove this -- 2.7.4