Commit Graph

2802 Commits

Author SHA1 Message Date
Elliott Hughes
71c0366fc7 am e135d7f3: am a61ac525: Merge "Fix module constructor order."
* commit 'e135d7f305c00272ce1544b8243f999bb99979ec':
  Fix module constructor order.
2012-08-13 11:11:58 -07:00
Elliott Hughes
e135d7f305 am a61ac525: Merge "Fix module constructor order."
* commit 'a61ac5257bea15d6cbfc640c03f18c2fb808b139':
  Fix module constructor order.
2012-08-13 11:10:32 -07:00
Elliott Hughes
a61ac5257b Merge "Fix module constructor order." 2012-08-13 11:06:53 -07:00
Evgeniy Stepanov
9181a5dcfe Fix module constructor order.
.preinit_array goes before the constructors of LD_PRELOAD-ed libraries.

Change-Id: I1af32ce29eaf3ca4351ae8a0f7f5da5165853216
2012-08-13 11:05:47 -07:00
Nick Kralevich
34e5212961 am 19b10419: am 89fd9ecc: am 20b94c0c: Merge "linker: don\'t perform unnecessary mprotects"
* commit '19b104193067a42806dd291a20af29ebbd1c37f0':
  linker: don't perform unnecessary mprotects
2012-08-13 09:50:30 -07:00
Nick Kralevich
19b1041930 am 89fd9ecc: am 20b94c0c: Merge "linker: don\'t perform unnecessary mprotects"
* commit '89fd9eccdca0eb5aed296bd7a2003424defe970c':
  linker: don't perform unnecessary mprotects
2012-08-13 09:48:17 -07:00
Nick Kralevich
89fd9eccdc am 20b94c0c: Merge "linker: don\'t perform unnecessary mprotects"
* commit '20b94c0ce99ea3d2315535091c8bcd02f831d252':
  linker: don't perform unnecessary mprotects
2012-08-13 09:46:43 -07:00
Nick Kralevich
20b94c0ce9 Merge "linker: don't perform unnecessary mprotects" 2012-08-13 09:28:54 -07:00
Nick Kralevich
5135b3ae6e linker: don't perform unnecessary mprotects
The linker only needs to mark the text segment as
writable iff the file has text relocations. Unnecessarily
calling mprotect when it isn't necessary is slow, and some
security enhanced kernels don't like it. Pages which are
simultaneously writable and executable are considered a no-no.

The vast majority of executables / shared libraries on Android
do NOT have text relocations.

Change-Id: Ic38ce30a99b7e33ecf21efd9c108547a58eafa35
2012-08-13 08:50:11 -07:00
The Android Automerger
df0cf64781 merge in jb-mr1-release history after reset to jb-mr1-dev 2012-08-13 08:09:08 -07:00
Elliott Hughes
7261264c3a am 2a22a69e: am 877dc946: am 072a7e6c: Merge "MIPS support to the libc Makefile"
* commit '2a22a69e942cde007a1253e82be44548cfc018f8':
  MIPS support to the libc Makefile
2012-08-11 15:18:04 -07:00
Ben Cheng
daedcfc595 am 9eeaa4bd: am 7e3918eb: am 0bf5cf87: Merge "Set the dynamic field in the link map for the linker itself."
* commit '9eeaa4bd17b7131e20ad2e36f1372605e80a1332':
  Set the dynamic field in the link map for the linker itself.
2012-08-11 15:18:03 -07:00
Elliott Hughes
2a22a69e94 am 877dc946: am 072a7e6c: Merge "MIPS support to the libc Makefile"
* commit '877dc946090749ba7a71f7ae07f51aa32f966083':
  MIPS support to the libc Makefile
2012-08-11 15:16:34 -07:00
Ben Cheng
9eeaa4bd17 am 7e3918eb: am 0bf5cf87: Merge "Set the dynamic field in the link map for the linker itself."
* commit '7e3918eb62d31224fc5d1cff44d591fecd31e9d0':
  Set the dynamic field in the link map for the linker itself.
2012-08-11 15:16:33 -07:00
Elliott Hughes
877dc94609 am 072a7e6c: Merge "MIPS support to the libc Makefile"
* commit '072a7e6ced29d9be29e38721d0ab7de0ba3f7377':
  MIPS support to the libc Makefile
2012-08-11 11:51:37 -07:00
Ben Cheng
7e3918eb62 am 0bf5cf87: Merge "Set the dynamic field in the link map for the linker itself."
* commit '0bf5cf87c6b7d3de8962ba132ecfb6f0e4b84f06':
  Set the dynamic field in the link map for the linker itself.
2012-08-11 11:51:36 -07:00
Elliott Hughes
072a7e6ced Merge "MIPS support to the libc Makefile" 2012-08-11 09:36:05 -07:00
Raghu Gandham
a4c7933b49 MIPS support to the libc Makefile
Change-Id: Ia1f3f545ca61a5abb235e99046cb3cdaf24d4205
2012-08-10 17:24:02 -07:00
Ben Cheng
0bf5cf87c6 Merge "Set the dynamic field in the link map for the linker itself." 2012-08-10 16:46:09 -07:00
Ben Cheng
06f0e74a2b Set the dynamic field in the link map for the linker itself.
Otherwise gdb will print a spurious warning each time gdb is used:

warning: .dynamic section for "/system/bin/linker" is not at the expected
address (wrong library or version mismatch?)

BUG:6946614
Change-Id: Ib21b8db0615751189c1601140deb43bc089289b6
2012-08-10 16:07:02 -07:00
Elliott Hughes
516b26f2bf am 0837c69a: am edf09bf9: am 316ee626: Merge "MIPS support to sigsuspend and sigwait routines"
* commit '0837c69a63439b0c1bf3fbf1b93f3003fc5c9a2d':
  MIPS support to sigsuspend and sigwait routines
2012-08-10 15:18:59 -07:00
Elliott Hughes
0837c69a63 am edf09bf9: am 316ee626: Merge "MIPS support to sigsuspend and sigwait routines"
* commit 'edf09bf990c8b011a084dbdb92050879e08ad8a9':
  MIPS support to sigsuspend and sigwait routines
2012-08-10 15:17:05 -07:00
Elliott Hughes
edf09bf990 am 316ee626: Merge "MIPS support to sigsuspend and sigwait routines"
* commit '316ee626b729e3f66a5505a20128af26440cfd19':
  MIPS support to sigsuspend and sigwait routines
2012-08-10 15:15:23 -07:00
Elliott Hughes
316ee626b7 Merge "MIPS support to sigsuspend and sigwait routines" 2012-08-10 15:05:36 -07:00
Nick Kralevich
17f65bf468 am 73d99958: am fabeb736: am 38a02b4b: Merge "crtend*: Add GNU_STACK note"
* commit '73d99958bb8bb4cd8f8a7632aeb7e6afaa1e38f1':
  crtend*: Add GNU_STACK note
2012-08-10 14:48:44 -07:00
Nick Kralevich
73d99958bb am fabeb736: am 38a02b4b: Merge "crtend*: Add GNU_STACK note"
* commit 'fabeb736e91d4f4f79a1cbbed696cffb50a860a9':
  crtend*: Add GNU_STACK note
2012-08-10 14:46:56 -07:00
Nick Kralevich
fabeb736e9 am 38a02b4b: Merge "crtend*: Add GNU_STACK note"
* commit '38a02b4b80f50aa1b3e2ee39e9e98146cf42be3d':
  crtend*: Add GNU_STACK note
2012-08-10 14:42:11 -07:00
Nick Kralevich
38a02b4b80 Merge "crtend*: Add GNU_STACK note" 2012-08-10 14:29:27 -07:00
Elliott Hughes
623ed02e35 am d71ada63: am 535477ca: am 3ede900b: Merge "Revert "Revert "Switch to NetBSD\'s strxfrm(3)."""
* commit 'd71ada630d5390b7fb6838cb48cb79a1581df1b1':
  Revert "Revert "Switch to NetBSD's strxfrm(3).""
2012-08-10 14:14:29 -07:00
Elliott Hughes
d71ada630d am 535477ca: am 3ede900b: Merge "Revert "Revert "Switch to NetBSD\'s strxfrm(3)."""
* commit '535477ca5e29f3c14dff11ac362423156b5971ec':
  Revert "Revert "Switch to NetBSD's strxfrm(3).""
2012-08-10 14:12:08 -07:00
Nick Kralevich
6eee1fc68f crtend*: Add GNU_STACK note
Add a GNU_STACK marker to crtend* files. This tells the linker
that these files do not require an executable stack.

When linking, a missing GNU_STACK marker in any .o file can prevent
the compiler from automatically marking the final executable as NX
safe (executable stack not required).  In Android, we normally work
around this by adding -Wa,--noexecstack / -Wl,-z,noexecstack.
For files like crtend.S / crtend_so.S, which are included in every
executable / shared library, it's better to add the GNU_STACK note
directly to the assembly file.  This allows the compiler to
automatically mark the final executable as NX safe without any
special command line options.

References: http://www.gentoo.org/proj/en/hardened/gnu-stack.xml

Change-Id: I07bd058f9f60ddd8b146e0fb36ba26ff84c0357d
2012-08-10 14:12:00 -07:00
Elliott Hughes
535477ca5e am 3ede900b: Merge "Revert "Revert "Switch to NetBSD\'s strxfrm(3)."""
* commit '3ede900b644c2a7c2fa41177b81735c8a09bd14a':
  Revert "Revert "Switch to NetBSD's strxfrm(3).""
2012-08-10 14:10:03 -07:00
Elliott Hughes
3ede900b64 Merge "Revert "Revert "Switch to NetBSD's strxfrm(3).""" 2012-08-10 14:03:06 -07:00
Elliott Hughes
be01adce36 am 5adc7fdc: am b54e5f2a: am a1822dce: Merge "Add unshare() syscall."
* commit '5adc7fdc2bc8e6e513c3dd9cd0c5cb7617d08d14':
  Add unshare() syscall.
2012-08-10 13:08:05 -07:00
Elliott Hughes
5adc7fdc2b am b54e5f2a: am a1822dce: Merge "Add unshare() syscall."
* commit 'b54e5f2a2fd014a5cbf105daea7b2eb8b59dec29':
  Add unshare() syscall.
2012-08-10 13:06:35 -07:00
Elliott Hughes
b54e5f2a2f am a1822dce: Merge "Add unshare() syscall."
* commit 'a1822dced3ed8625438b3cbf1c53f907f78a3a48':
  Add unshare() syscall.
2012-08-10 13:04:22 -07:00
Elliott Hughes
a1822dced3 Merge "Add unshare() syscall." 2012-08-10 12:59:49 -07:00
Jeff Sharkey
e36c826f7a Add unshare() syscall.
(cherry-pick of 5467f25f82934d611c60f8bc57a05114f3c1bea0.)

Bug: 6925012
Change-Id: Ic5ea2fbd606311087de05d7a3594df2fa9b2fef9
2012-08-10 12:57:43 -07:00
Elliott Hughes
4fc5f6c366 am 5140b785: am f6922be2: am f91e2f72: Merge "Fix typo in SIGTTOU description."
* commit '5140b785a04827d34225241f99f17e49aadbf3bb':
  Fix typo in SIGTTOU description.
2012-08-10 12:52:23 -07:00
Elliott Hughes
7186a13284 am 55206504: am a618ea30: am 4ec9e343: Merge "Revert "Switch to NetBSD\'s strxfrm(3).""
* commit '552065048334cc893dadbc926701d08dc6c66fcc':
  Revert "Switch to NetBSD's strxfrm(3)."
2012-08-10 12:52:22 -07:00
Elliott Hughes
731ecf0a31 am 29b8fb3d: am 3e83da43: am 9ad1d6f5: Merge "Switch to NetBSD\'s strxfrm(3)."
* commit '29b8fb3d5ea06d05fcd36e298b464dce7dc06803':
  Switch to NetBSD's strxfrm(3).
2012-08-10 12:52:20 -07:00
Elliott Hughes
5140b785a0 am f6922be2: am f91e2f72: Merge "Fix typo in SIGTTOU description."
* commit 'f6922be2a5e30fc594f48ec435d92b5386648061':
  Fix typo in SIGTTOU description.
2012-08-10 12:49:12 -07:00
Elliott Hughes
5520650483 am a618ea30: am 4ec9e343: Merge "Revert "Switch to NetBSD\'s strxfrm(3).""
* commit 'a618ea30e1c9d4f06031fb4ecdae31666db92993':
  Revert "Switch to NetBSD's strxfrm(3)."
2012-08-10 12:49:10 -07:00
Elliott Hughes
29b8fb3d5e am 3e83da43: am 9ad1d6f5: Merge "Switch to NetBSD\'s strxfrm(3)."
* commit '3e83da435b3ad7bee739972fca53dbfb692e6438':
  Switch to NetBSD's strxfrm(3).
2012-08-10 12:49:08 -07:00
Elliott Hughes
d18b181a25 am b6c1e34d: am dc6d5327: am 0836a7ff: Merge "Auto-generate a complete NOTICE file."
* commit 'b6c1e34dca58734c949b6c80d68c74104e1190e0':
  Auto-generate a complete NOTICE file.
2012-08-10 12:38:37 -07:00
Elliott Hughes
b6c1e34dca am dc6d5327: am 0836a7ff: Merge "Auto-generate a complete NOTICE file."
* commit 'dc6d5327bb6b030d154675f753d3e4f96dfa5e14':
  Auto-generate a complete NOTICE file.
2012-08-10 12:36:22 -07:00
Elliott Hughes
f6922be2a5 am f91e2f72: Merge "Fix typo in SIGTTOU description."
* commit 'f91e2f72861643e1d31ffc3e6c374b52d33d2423':
  Fix typo in SIGTTOU description.
2012-08-10 12:34:17 -07:00
Elliott Hughes
f91e2f7286 Merge "Fix typo in SIGTTOU description." 2012-08-10 12:27:06 -07:00
Elliott Hughes
01030e6388 Fix typo in SIGTTOU description.
Change-Id: Ie0db3e7df3e1f17b43f5645d027a90603139be2f
2012-08-10 12:23:58 -07:00
Elliott Hughes
f8b3a920a8 Revert "Revert "Switch to NetBSD's strxfrm(3).""
This reverts commit 8793e7c7d2,
and fixes the build by building upstream NetBSD source as a
separate library that's then swallowed whole into libc_common.

Change-Id: I6c9317d8c48b5ccaf85a7b185bc07fb31176ff97
2012-08-10 12:10:10 -07:00