[16/19] Mark ld.so internel mmap functions hidden

Message ID 20151014224754.GC30911@intel.com
State New, archived
Headers

Commit Message

Lu, Hongjiu Oct. 14, 2015, 10:47 p.m. UTC
  Since ld.so internel mmap functions are only used internally in ld.so,
they can be made hidden.

	 [BZ #19122]
	 * include/sys/mman.h [IS_IN (rtld)] (__mmap): Add
	 attribute_hidden.
	 [IS_IN (rtld)] (__mprotect): Likewise.
	 [IS_IN (rtld)] (__munmap): Likewise.
---
 include/sys/mman.h | 6 ++++++
 1 file changed, 6 insertions(+)
  

Comments

Roland McGrath Oct. 15, 2015, 8:15 p.m. UTC | #1
For this and all the rest you need to verify that they do not break
anything on Hurd.
  
H.J. Lu Oct. 15, 2015, 8:22 p.m. UTC | #2
On Thu, Oct 15, 2015 at 1:15 PM, Roland McGrath <roland@hack.frob.com> wrote:
> For this and all the rest you need to verify that they do not break
> anything on Hurd.

For all I know, they are internal to ld.so.  Can someone show the
output of

# readelf --dyn-sym --wide elf/ld.so

on i386 Hurd?

Thanks.
  

Patch

diff --git a/include/sys/mman.h b/include/sys/mman.h
index fd125ec..fdfedbb 100644
--- a/include/sys/mman.h
+++ b/include/sys/mman.h
@@ -16,6 +16,12 @@  libc_hidden_proto (__madvise)
 /* This one is Linux specific.  */
 extern void *__mremap (void *__addr, size_t __old_len,
 		       size_t __new_len, int __flags, ...);
+
+# if IS_IN (rtld)
+extern __typeof (__mmap) __mmap attribute_hidden;
+extern __typeof (__mprotect) __mprotect attribute_hidden;
+extern __typeof (__munmap) __munmap attribute_hidden;
+# endif
 #endif
 
 #endif