[Python-checkins] bpo-35214: Add _Py_ prefix to MEMORY_SANITIZER def. (GH-10503)

Miss Islington (bot) webhook-mailer at python.org
Tue Nov 13 01:27:10 EST 2018


https://github.com/python/cpython/commit/60cf26528b931215160a53fd61836dbe4f036009
commit: 60cf26528b931215160a53fd61836dbe4f036009
branch: 3.6
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2018-11-12T22:27:05-08:00
summary:

bpo-35214: Add _Py_ prefix to MEMORY_SANITIZER def. (GH-10503)


Rename our new MEMORY_SANITIZER define to _Py_MEMORY_SANITIZER.
Project based C Preprocessor namespacing at its finest. :P
(cherry picked from commit 3015fb8ce4d25603434b9b44bb7effb98a481532)

Co-authored-by: Gregory P. Smith <greg at krypto.org>

files:
M Include/Python.h
M Modules/_ctypes/callproc.c
M Modules/_posixsubprocess.c
M Objects/fileobject.c
M Python/pymath.c
M Python/random.c

diff --git a/Include/Python.h b/Include/Python.h
index 565f34a371f5..bf1dfac06763 100644
--- a/Include/Python.h
+++ b/Include/Python.h
@@ -56,8 +56,8 @@
 /* A convenient way for code to know if clang's memory sanitizer is enabled. */
 #if defined(__has_feature)
 #  if __has_feature(memory_sanitizer)
-#    if !defined(MEMORY_SANITIZER)
-#      define MEMORY_SANITIZER
+#    if !defined(_Py_MEMORY_SANITIZER)
+#      define _Py_MEMORY_SANITIZER
 #    endif
 #  endif
 #endif
diff --git a/Modules/_ctypes/callproc.c b/Modules/_ctypes/callproc.c
index 0e1f065e19a4..e6079e9938ce 100644
--- a/Modules/_ctypes/callproc.c
+++ b/Modules/_ctypes/callproc.c
@@ -75,7 +75,7 @@
 #include <alloca.h>
 #endif
 
-#ifdef MEMORY_SANITIZER
+#ifdef _Py_MEMORY_SANITIZER
 #include <sanitizer/msan_interface.h>
 #endif
 
@@ -1140,7 +1140,7 @@ PyObject *_ctypes_callproc(PPROC pProc,
     rtype = _ctypes_get_ffi_type(restype);
     resbuf = alloca(max(rtype->size, sizeof(ffi_arg)));
 
-#ifdef MEMORY_SANITIZER
+#ifdef _Py_MEMORY_SANITIZER
     /* ffi_call actually initializes resbuf, but from asm, which
      * MemorySanitizer can't detect. Avoid false positives from MSan. */
     if (resbuf != NULL) {
diff --git a/Modules/_posixsubprocess.c b/Modules/_posixsubprocess.c
index fe519dea9c54..07dd54dba94c 100644
--- a/Modules/_posixsubprocess.c
+++ b/Modules/_posixsubprocess.c
@@ -21,7 +21,7 @@
 #include <dirent.h>
 #endif
 
-#ifdef MEMORY_SANITIZER
+#ifdef _Py_MEMORY_SANITIZER
 # include <sanitizer/msan_interface.h>
 #endif
 
@@ -291,7 +291,7 @@ _close_open_fds_safe(int start_fd, PyObject* py_fds_to_keep)
                                 sizeof(buffer))) > 0) {
             struct linux_dirent64 *entry;
             int offset;
-#ifdef MEMORY_SANITIZER
+#ifdef _Py_MEMORY_SANITIZER
             __msan_unpoison(buffer, bytes);
 #endif
             for (offset = 0; offset < bytes; offset += entry->d_reclen) {
diff --git a/Objects/fileobject.c b/Objects/fileobject.c
index f4944da4fcce..f8b47fcdce5c 100644
--- a/Objects/fileobject.c
+++ b/Objects/fileobject.c
@@ -3,7 +3,7 @@
 #define PY_SSIZE_T_CLEAN
 #include "Python.h"
 
-#if defined(HAVE_GETC_UNLOCKED) && !defined(MEMORY_SANITIZER)
+#if defined(HAVE_GETC_UNLOCKED) && !defined(_Py_MEMORY_SANITIZER)
 /* clang MemorySanitizer doesn't yet understand getc_unlocked. */
 #define GETC(f) getc_unlocked(f)
 #define FLOCKFILE(f) flockfile(f)
diff --git a/Python/pymath.c b/Python/pymath.c
index c1606bd6d1da..24b804223eef 100644
--- a/Python/pymath.c
+++ b/Python/pymath.c
@@ -17,7 +17,7 @@ double _Py_force_double(double x)
 
 /* inline assembly for getting and setting the 387 FPU control word on
    gcc/x86 */
-#ifdef MEMORY_SANITIZER
+#ifdef _Py_MEMORY_SANITIZER
 __attribute__((no_sanitize_memory))
 #endif
 unsigned short _Py_get_387controlword(void) {
diff --git a/Python/random.c b/Python/random.c
index 8f6670457f3f..d4747d61eb86 100644
--- a/Python/random.c
+++ b/Python/random.c
@@ -20,7 +20,7 @@
 #  endif
 #endif
 
-#ifdef MEMORY_SANITIZER
+#ifdef _Py_MEMORY_SANITIZER
 #  include <sanitizer/msan_interface.h>
 #endif
 
@@ -147,7 +147,7 @@ py_getrandom(void *buffer, Py_ssize_t size, int blocking, int raise)
         else {
             n = syscall(SYS_getrandom, dest, n, flags);
         }
-#  ifdef MEMORY_SANITIZER
+#  ifdef _Py_MEMORY_SANITIZER
         if (n > 0) {
              __msan_unpoison(dest, n);
         }



More information about the Python-checkins mailing list