]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - android-sdk/platform-bionic.git/commitdiff
Remove non-standard prctl constants from <sys/prctl.h>.
authorElliott Hughes <enh@google.com>
Thu, 17 Jul 2014 21:26:33 +0000 (14:26 -0700)
committerElliott Hughes <enh@google.com>
Thu, 17 Jul 2014 21:26:33 +0000 (14:26 -0700)
Also remove __bionic_name_mem which has exactly one caller, and is only
ever expected to be used in this one place.

Change-Id: I833744f91e887639f5b2d1269f966ee9032af207

libc/Android.mk
libc/bionic/__bionic_name_mem.cpp [deleted file]
libc/bionic/dlmalloc.c
libc/include/sys/prctl.h
libc/private/bionic_name_mem.h [deleted file]

index 0485d72b890fa2f5473fc1cbedecfb284c066c78..0adaff7d578be55a936ef136c425b4c67c2a6f37 100644 (file)
@@ -96,7 +96,6 @@ libc_bionic_src_files := \
     bionic/access.cpp \
     bionic/assert.cpp \
     bionic/atof.cpp \
-    bionic/__bionic_name_mem.cpp \
     bionic/bionic_time_conversions.cpp \
     bionic/brk.cpp \
     bionic/c16rtomb.cpp \
diff --git a/libc/bionic/__bionic_name_mem.cpp b/libc/bionic/__bionic_name_mem.cpp
deleted file mode 100644 (file)
index 72a1d1e..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include "private/bionic_name_mem.h"
-
-#include <sys/prctl.h>
-
-// Local definitions of custom prctl arguments to set a vma name in some kernels.
-#define BIONIC_PR_SET_VMA               0x53564d41
-#define BIONIC_PR_SET_VMA_ANON_NAME     0
-
-// Names a region of memory.  The name is expected to show up in /proc/pid/maps
-// and /proc/pid/smaps.  There is no guarantee that it will work, and if it
-// does work it is likely to only work on memory that was allocated with
-// mmap(MAP_ANONYMOUS), and only on regions that are page aligned.  name should
-// be a pointer to a string that is valid for as long as the memory is mapped,
-// preferably a compile-time constant string.
-//
-// Returns -1 on error and sets errno.  If it returns an error naming page
-// aligned anonymous memory the kernel doesn't support naming, and an alternate
-// method of naming memory should be used (like ashmem).
-
-int __bionic_name_mem(void* addr, size_t len, const char* name) {
-    return prctl(BIONIC_PR_SET_VMA, BIONIC_PR_SET_VMA_ANON_NAME, addr, len, name);
-}
index 2d67392c098f8299f007a04d5fe9d28c21ba1665..7ecca1d3e4befd8d5436a8726e7222dd095b8314 100644 (file)
@@ -26,11 +26,16 @@ static void __bionic_heap_usage_error(const char* function, void* address);
 #define CORRUPTION_ERROR_ACTION(m) __bionic_heap_corruption_error(__FUNCTION__)
 #define USAGE_ERROR_ACTION(m,p) __bionic_heap_usage_error(__FUNCTION__, p)
 
-/* Bionic named anonymous memory declarations */
+// Bionic named anonymous memory declarations.
 static void* named_anonymous_mmap(size_t length);
 #define MMAP(s) named_anonymous_mmap(s)
 #define DIRECT_MMAP(s) named_anonymous_mmap(s)
 
+// Local definitions of custom prctl arguments to set a vma name in Android kernels.
+#include <sys/prctl.h>
+#define PR_SET_VMA           0x53564d41
+#define PR_SET_VMA_ANON_NAME 0
+
 // Ugly inclusion of C file so that bionic specific #defines configure dlmalloc.
 #include "../upstream-dlmalloc/malloc.c"
 
@@ -51,6 +56,6 @@ static void* named_anonymous_mmap(size_t length) {
   if (map == MAP_FAILED) {
     return map;
   }
-  __bionic_name_mem(map, length, "libc_malloc");
+  prctl(BIONIC_PR_SET_VMA, BIONIC_PR_SET_VMA_ANON_NAME, map, length, "libc_malloc");
   return map;
 }
index 391c22a774280f2ed579be7bc3778239a7ab29a9..f66f6f5441285583d9c3ae28acd54b082219a022 100644 (file)
 #error PR_SET_TIMERSLACK_PID defined twice
 #endif
 
-#if !defined(PR_SET_VMA)
-#define PR_SET_VMA 0x53564d41
-#else
-#error PR_SET_VMA defined twice
-#endif
-
-#if !defined(PR_SET_VMA_ANON_NAME)
-#define PR_SET_VMA_ANON_NAME 0
-#else
-#error PR_SET_VMA_ANON_NAME defined twice
-#endif
-
 __BEGIN_DECLS
 
 /* IMPORTANT NOTE: This function is declared as taking a variable number
@@ -63,4 +51,3 @@ extern int prctl(int option, ...);
 __END_DECLS
 
 #endif /* _SYS_PRCTL_H */
-
diff --git a/libc/private/bionic_name_mem.h b/libc/private/bionic_name_mem.h
deleted file mode 100644 (file)
index 1c7664e..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef _BIONIC_NAME_MEM_H
-#define _BIONIC_NAME_MEM_H
-
-#include <sys/cdefs.h>
-#include <stddef.h>
-
-__BEGIN_DECLS
-
-__LIBC_HIDDEN__ int __bionic_name_mem(void* addr, size_t len, const char* name);
-
-__END_DECLS
-
-#endif