]> granicus.if.org Git - gc/commitdiff
Disable mprotect-based incremental GC if /proc roots are used (Linux)
authorIvan Maidanski <ivmai@mail.ru>
Thu, 29 Aug 2019 21:28:23 +0000 (00:28 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Thu, 29 Aug 2019 21:28:23 +0000 (00:28 +0300)
The incremental GC is considered incompatible with /proc roots.

* include/private/gcconfig.h [USE_PROC_FOR_LIBRARIES
&& GC_LINUX_THREADS] (MPROTECT_VDB): Undefine; add comment.

include/private/gcconfig.h

index ffd8e3a34b409762eccf925accae55f411caa163..2dda9401440716626f99a8872aa270a6dbf020fa 100644 (file)
@@ -3153,6 +3153,11 @@ EXTERN_C_BEGIN
 # undef MPROTECT_VDB
 #endif
 
+#if defined(USE_PROC_FOR_LIBRARIES) && defined(GC_LINUX_THREADS)
+  /* Incremental GC is incompatible with /proc roots.   */
+# undef MPROTECT_VDB
+#endif
+
 #if defined(MPROTECT_VDB) && defined(GC_PREFER_MPROTECT_VDB)
   /* Choose MPROTECT_VDB manually (if multiple strategies available).   */
 # undef PCR_VDB