OSDN Git Service

android-x86/bionic.git
7 years agoMerge "Expose seccomp table"
Paul Lawrence [Tue, 28 Mar 2017 01:58:29 +0000 (01:58 +0000)]
Merge "Expose seccomp table"
am: 4b43140142

Change-Id: If4a0e4194e2b15bd2ce3bdc81c078074e462b1f9

7 years agoMerge "Expose seccomp table"
Treehugger Robot [Tue, 28 Mar 2017 01:54:12 +0000 (01:54 +0000)]
Merge "Expose seccomp table"

7 years agoMerge "bionic: arm64: generic: strcmp: align to 64B cache line"
Christopher Ferris [Tue, 28 Mar 2017 01:34:28 +0000 (01:34 +0000)]
Merge "bionic: arm64: generic: strcmp: align to 64B cache line"
am: f785a6cbff

Change-Id: I3b5b76a6c9a0881c9f82012161254dbd480d062b

7 years agoMerge "bionic: arm64: generic: strcmp: align to 64B cache line"
Christopher Ferris [Tue, 28 Mar 2017 01:27:17 +0000 (01:27 +0000)]
Merge "bionic: arm64: generic: strcmp: align to 64B cache line"

7 years agoMerge "Make anonymous namespace isoalted."
Dimitry Ivanov [Tue, 28 Mar 2017 01:09:57 +0000 (01:09 +0000)]
Merge "Make anonymous namespace isoalted."
am: 6b0f17e588

Change-Id: Ibecb1efa6b81242ffc1ffc6d5f60a13785fc8578

7 years agoMerge "Make anonymous namespace isoalted."
Dimitry Ivanov [Tue, 28 Mar 2017 00:59:08 +0000 (00:59 +0000)]
Merge "Make anonymous namespace isoalted."

7 years agoExpose seccomp table
Paul Lawrence [Mon, 27 Mar 2017 22:38:37 +0000 (15:38 -0700)]
Expose seccomp table

Test: Run with internal cl
      https://googleplex-android-review.git.corp.google.com/#/c/2028102/
      and make sure passes
Bug: 20890063
Change-Id: Id78e5ea843554a5d3750b8f9b350f28ad4dca99b

7 years agoMake anonymous namespace isoalted.
Dimitry Ivanov [Mon, 27 Mar 2017 22:42:17 +0000 (15:42 -0700)]
Make anonymous namespace isoalted.

This addresses outstanding todo for anonymous namespace
and fixes an app compatibility bug.

Bug: http://b/36008422
Test: start app from http://b/36008422 and make sure it runs
Change-Id: Ie148418b944379ee1000e7274f2f6c1eca511d6c

7 years agoMerge "Revert "linker: add more directories to default lib paths""
Dimitry Ivanov [Sat, 25 Mar 2017 07:49:41 +0000 (07:49 +0000)]
Merge "Revert "linker: add more directories to default lib paths""
am: 840ae69408

Change-Id: I49d120109ead5daa672bf7dff916029828c6b94e

7 years agoMerge "Revert "linker: add more directories to default lib paths""
Dimitry Ivanov [Sat, 25 Mar 2017 07:46:18 +0000 (07:46 +0000)]
Merge "Revert "linker: add more directories to default lib paths""

7 years agoMerge "Load namespace configuration from ld.config.txt"
Dimitry Ivanov [Sat, 25 Mar 2017 05:21:08 +0000 (05:21 +0000)]
Merge "Load namespace configuration from ld.config.txt"
am: deca8effd0

Change-Id: Iaf23427acf6a1e5a6336dc43838d1678b364a277

7 years agoMerge "Load namespace configuration from ld.config.txt"
Treehugger Robot [Sat, 25 Mar 2017 05:17:31 +0000 (05:17 +0000)]
Merge "Load namespace configuration from ld.config.txt"

7 years agoMerge "Disable compat_elf_hash_and_relocation_tables test for x86"
Dimitry Ivanov [Fri, 24 Mar 2017 23:06:39 +0000 (23:06 +0000)]
Merge "Disable compat_elf_hash_and_relocation_tables test for x86"
am: fe96db819b

Change-Id: I6ff32babeeb514cd00704e797a713ac4149dc868

7 years agoMerge "Disable compat_elf_hash_and_relocation_tables test for x86"
Dimitry Ivanov [Fri, 24 Mar 2017 23:02:54 +0000 (23:02 +0000)]
Merge "Disable compat_elf_hash_and_relocation_tables test for x86"

7 years agoLoad namespace configuration from ld.config.txt
Dimitry Ivanov [Tue, 7 Mar 2017 19:19:05 +0000 (11:19 -0800)]
Load namespace configuration from ld.config.txt

This change allows customization of default namespace
configuration for different executables. It also enables
target_sdk_version setup for binaries (note that this
option should explicitly be enabled in ld.config.txt).

Bug: http://b/30706810
Bug: http://b/30435785
Test: run linker-unit-tests/bionic-unit-tests, boot angler
Change-Id: Ibbe87209acf1538fc9cec04944f3d22a190c38f1

7 years agoDisable compat_elf_hash_and_relocation_tables test for x86
Dimitry Ivanov [Fri, 24 Mar 2017 17:58:23 +0000 (10:58 -0700)]
Disable compat_elf_hash_and_relocation_tables test for x86

Bug: http://b/36571076
Test: run bionic-unit-tests on fugu
Change-Id: I2f901bc99e55f15b06fe6a5b0d7a125d1b8241a8

7 years agoMerge "loader: stop relying on AT_BASE"
Dimitry Ivanov [Fri, 24 Mar 2017 02:06:22 +0000 (02:06 +0000)]
Merge "loader: stop relying on AT_BASE"
am: ad8dcd6023

Change-Id: Ie7a4ffd40a91d2b87468dc3374414cb4e6bed993

7 years agoMerge "loader: stop relying on AT_BASE"
Treehugger Robot [Fri, 24 Mar 2017 02:03:57 +0000 (02:03 +0000)]
Merge "loader: stop relying on AT_BASE"

7 years agoloader: stop relying on AT_BASE
Dimitry Ivanov [Thu, 23 Mar 2017 23:17:15 +0000 (16:17 -0700)]
loader: stop relying on AT_BASE

android loader should not rely on the fact
that AT_BASE is set because kernel currently
does not set it when linker is run standalone
(The linker does not have PT_INTERP set)

This commit replaces AT_BASE with calculated value.

Bug: http://b/30739481
Bug: http://b/35890756
Test: run bionic-unit-tests --gtest_filter=dl*
Change-Id: Ic2eb73e4452624b1f2e05f46e99e4c17df0bbc3f

7 years agoMerge "Expand whitelist"
Paul Lawrence [Thu, 23 Mar 2017 20:46:25 +0000 (20:46 +0000)]
Merge "Expand whitelist"
am: 58df5b2b86

Change-Id: I58f915835c2b0617c2bc846f2d021ce0747013c1

7 years agoMerge "Expand whitelist"
Treehugger Robot [Thu, 23 Mar 2017 20:41:34 +0000 (20:41 +0000)]
Merge "Expand whitelist"

7 years agoExpand whitelist
Paul Lawrence [Thu, 23 Mar 2017 19:20:00 +0000 (12:20 -0700)]
Expand whitelist

Bug: 36449658
Test: Builds
Change-Id: I610da03e7a3cede218d1657f53797ab72cbdf317

7 years agoMerge "Verify at least 2 frames out of signal handler."
Christopher Ferris [Thu, 23 Mar 2017 19:15:50 +0000 (19:15 +0000)]
Merge "Verify at least 2 frames out of signal handler."
am: 8f804d71d0

Change-Id: I101d82f95345ebda7d385142301e5fa3e35daeed

7 years agoMerge "Verify at least 2 frames out of signal handler."
Christopher Ferris [Thu, 23 Mar 2017 19:12:20 +0000 (19:12 +0000)]
Merge "Verify at least 2 frames out of signal handler."

7 years agoVerify at least 2 frames out of signal handler.
Christopher Ferris [Thu, 23 Mar 2017 02:05:50 +0000 (19:05 -0700)]
Verify at least 2 frames out of signal handler.

Modify the test slightly to make sure that the unwinder properly unwinds
through at least 2 frames outside of the signal handler. This guarantees
that if the first frame outside of the handler happens to be garbage,
this test will fail.

Bug: 34468756

Test: Ran the unit tests on fugu, angler (both 32 bit and 64 bit).
Change-Id: I6b76ac9fc1df9ed6fd5bbcc6f5fa4bf458354dff

7 years agoMerge "Fix problem that we don't block syscalls below min value"
Paul Lawrence [Wed, 22 Mar 2017 19:38:55 +0000 (19:38 +0000)]
Merge "Fix problem that we don't block syscalls below min value"
am: 4d099d1576

Change-Id: Iaa83772727fd8cb4b9468cd7033523afabe6baed

7 years agoMerge "Fix problem that we don't block syscalls below min value"
Treehugger Robot [Wed, 22 Mar 2017 19:33:07 +0000 (19:33 +0000)]
Merge "Fix problem that we don't block syscalls below min value"

7 years agoFix problem that we don't block syscalls below min value
Paul Lawrence [Wed, 22 Mar 2017 15:03:51 +0000 (08:03 -0700)]
Fix problem that we don't block syscalls below min value

The check that we are not below the lowest permitted syscall was
off by one, so we always allowed them, rather than always denying
them

Test: Check arm64 boots, chrome and maps work
      mips and mips64 emulators boot
      Note that arm, x86 and x86_64 already allow syscall 0 so there
      will be no functional change there

Change-Id: I85873f1d04124e634e648bd47c027f280f1d6dbd

7 years agoMerge "Update timezone data to 2017b"
Joachim Sauer [Wed, 22 Mar 2017 13:16:05 +0000 (13:16 +0000)]
Merge "Update timezone data to 2017b"
am: 341bb25a19

Change-Id: Ie617b4613a4faa33ae95d8e610b3f854caa989b8

7 years agoMerge "Update timezone data to 2017b"
Joachim Sauer [Wed, 22 Mar 2017 13:11:45 +0000 (13:11 +0000)]
Merge "Update timezone data to 2017b"

7 years agoMerge "Add systrace output for dlclose/dlsym calls"
Dimitry Ivanov [Tue, 21 Mar 2017 22:15:51 +0000 (22:15 +0000)]
Merge "Add systrace output for dlclose/dlsym calls"
am: 5153938e9a

Change-Id: I7c9914ae9b309e9c8d0369503546772b2b5b491e

7 years agoMerge "Add systrace output for dlclose/dlsym calls"
Treehugger Robot [Tue, 21 Mar 2017 22:06:08 +0000 (22:06 +0000)]
Merge "Add systrace output for dlclose/dlsym calls"

7 years agoMerge "POSIX support varies by API level."
Elliott Hughes [Tue, 21 Mar 2017 20:22:13 +0000 (20:22 +0000)]
Merge "POSIX support varies by API level."
am: 8ebfc0d3a3

Change-Id: Ifa732c7835620aaf1d12ad9b3a97253fad3f14b3

7 years agoMerge "POSIX support varies by API level."
Treehugger Robot [Tue, 21 Mar 2017 20:11:35 +0000 (20:11 +0000)]
Merge "POSIX support varies by API level."

7 years agoMerge "pthread barrier and spinlock types should only appear at API level 24."
Elliott Hughes [Tue, 21 Mar 2017 19:20:41 +0000 (19:20 +0000)]
Merge "pthread barrier and spinlock types should only appear at API level 24."
am: 72b6f4fae2

Change-Id: I497096763a796e0e69643d2240d3608eb169104d

7 years agoMerge "pthread barrier and spinlock types should only appear at API level 24."
Elliott Hughes [Tue, 21 Mar 2017 19:14:05 +0000 (19:14 +0000)]
Merge "pthread barrier and spinlock types should only appear at API level 24."

7 years agoPOSIX support varies by API level.
Elliott Hughes [Tue, 21 Mar 2017 18:24:13 +0000 (11:24 -0700)]
POSIX support varies by API level.

Bug: https://github.com/android-ndk/ndk/issues/332
Test: builds
Change-Id: I249c214d34244a1149ba6b1160e8eafc2cdbcdea

7 years agoAdd systrace output for dlclose/dlsym calls
Dimitry Ivanov [Tue, 21 Mar 2017 17:29:06 +0000 (10:29 -0700)]
Add systrace output for dlclose/dlsym calls

Bug: http://b/27195126
Test: manual: adb shell atrace -t 5 bionic
      and run bionic-unit-tests --gtest_filter=dl*

Change-Id: I9e93a069dd440bb643890d9952913938442ac375

7 years agopthread barrier and spinlock types should only appear at API level 24.
Elliott Hughes [Tue, 21 Mar 2017 16:39:56 +0000 (09:39 -0700)]
pthread barrier and spinlock types should only appear at API level 24.

Bug: https://github.com/android-ndk/ndk/issues/336
Test: builds
Change-Id: I938d9d7ea879d1dbc355f14e100f1ea31a51a1f0

7 years agoUpdate timezone data to 2017b
Joachim Sauer [Tue, 21 Mar 2017 15:25:34 +0000 (15:25 +0000)]
Update timezone data to 2017b

IANA changes:

  Briefly: Haiti has resumed DST.

  Changes to past and future time stamps

    Haiti resumed observance of DST in 2017.  (Thanks to Steffen Thorsen.)

  Changes to past time stamps

    Liberia changed from -004430 to +00 on 1972-01-07, not 1972-05-01.

    Use "MMT" to abbreviate Liberia's time zone before 1972, as "-004430"
    is one byte over the POSIX limit.  (Problem reported by Derick Rethans.)

Bug: 36470257
Test: CtsLibcoreTestCases / CtsBionicTestCases
Change-Id: I5a8ffb60232410d88ffa67c7702dd234ff05f61d

7 years agoMerge changes Ib2bad794,I82436292
Dimitry Ivanov [Mon, 20 Mar 2017 22:39:50 +0000 (22:39 +0000)]
Merge changes Ib2bad794,I82436292
am: e98d1e68ce

Change-Id: I9a7976262216e9196bb1bc5a5b2bd5736346b109

7 years agoMerge changes Ib2bad794,I82436292
Dimitry Ivanov [Mon, 20 Mar 2017 22:34:36 +0000 (22:34 +0000)]
Merge changes Ib2bad794,I82436292

* changes:
  Add systrace output for dlopen calls
  Add end() method to bionic's ScopedTrace class

7 years agoMerge "Only rename mmap to mmap64 if we're L or newer."
Dan Albert [Mon, 20 Mar 2017 22:00:16 +0000 (22:00 +0000)]
Merge "Only rename mmap to mmap64 if we're L or newer."
am: e36fb9ed9e

Change-Id: Id3694c3dbb255887c208566757063bf51f08ec42

7 years agoMerge "Only rename mmap to mmap64 if we're L or newer."
Treehugger Robot [Mon, 20 Mar 2017 21:53:39 +0000 (21:53 +0000)]
Merge "Only rename mmap to mmap64 if we're L or newer."

7 years agoAdd systrace output for dlopen calls
Dimitry Ivanov [Fri, 17 Mar 2017 23:41:34 +0000 (16:41 -0700)]
Add systrace output for dlopen calls

Bug: http://b/27195126
Test: manual: adb shell atrace -t 5 bionic
      and run bionic-unit-tests --gtest_filter=dl*:Dl*

Change-Id: Ib2bad794e571b89bd1f52c9e0de642c2092e5c21

7 years agoMerge "Only rename fgetpos/fsetpos/fseeko/ftello/funopen if we're N or newer."
Elliott Hughes [Mon, 20 Mar 2017 20:08:20 +0000 (20:08 +0000)]
Merge "Only rename fgetpos/fsetpos/fseeko/ftello/funopen if we're N or newer."
am: 8bd97b007e

Change-Id: I64aadf8f81717e78c2d96d6fe13ae034a5955557

7 years agoMerge "Only rename sendfile to sendfile64 if we're L or newer."
Elliott Hughes [Mon, 20 Mar 2017 20:08:09 +0000 (20:08 +0000)]
Merge "Only rename sendfile to sendfile64 if we're L or newer."
am: f12d719b01

Change-Id: Id7bab533a4be040f5c3eac10a5df32e9b6820cfc

7 years agoMerge "Only rename fgetpos/fsetpos/fseeko/ftello/funopen if we're N or newer."
Elliott Hughes [Mon, 20 Mar 2017 20:01:16 +0000 (20:01 +0000)]
Merge "Only rename fgetpos/fsetpos/fseeko/ftello/funopen if we're N or newer."

7 years agoMerge "Only rename sendfile to sendfile64 if we're L or newer."
Elliott Hughes [Mon, 20 Mar 2017 20:01:06 +0000 (20:01 +0000)]
Merge "Only rename sendfile to sendfile64 if we're L or newer."

7 years agoMerge "Expand whitelist"
Paul Lawrence [Mon, 20 Mar 2017 19:57:36 +0000 (19:57 +0000)]
Merge "Expand whitelist"
am: b43a222ee7

Change-Id: If0754c6fed7fc9d2704c6761e46643abb502a5ca

7 years agoOnly rename mmap to mmap64 if we're L or newer.
Dan Albert [Fri, 17 Mar 2017 18:47:09 +0000 (11:47 -0700)]
Only rename mmap to mmap64 if we're L or newer.

Without this, setting `__USE_FILE_OFFSET64` and targeting pre-L made
mmap entirely unavailable.

Test: make checkbuild
Bug: https://github.com/android-ndk/ndk/issues/332
Change-Id: I9f61c44f8d9ab5c7cae845c9f89a7d889c6df365

7 years agoMerge "Expand whitelist"
Treehugger Robot [Mon, 20 Mar 2017 19:52:12 +0000 (19:52 +0000)]
Merge "Expand whitelist"

7 years agoAdd end() method to bionic's ScopedTrace class
Dimitry Ivanov [Mon, 20 Mar 2017 17:54:52 +0000 (10:54 -0700)]
Add end() method to bionic's ScopedTrace class

Bug: http://b/27195126
Test: make
Change-Id: I8243629200606ca87b11cbd479ca093add42eb56

7 years agoExpand whitelist
Paul Lawrence [Mon, 20 Mar 2017 18:02:11 +0000 (11:02 -0700)]
Expand whitelist

Bug: 36435222
Test: App starts, plays game
Change-Id: If21f59e4d218be64fdac46115d35dc1ffb6fe771

7 years agobionic: arm64: generic: strcmp: align to 64B cache line
Yuanyuan Zhong [Wed, 7 Sep 2016 21:58:40 +0000 (16:58 -0500)]
bionic: arm64: generic: strcmp: align to 64B cache line

Align strcmp to 64B. This will ensure the preformance critical
loop is within one 64B cache line.

Change-Id: I88eef2f12b2a6442cacec9cdbdffbf17293e7d32
Signed-off-by: Yuanyuan Zhong <zyy@motorola.com>
Reviewed-on: https://gerrit.mot.com/902536
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver <sltawvr@motorola.com>
Tested-by: Jira Key <jirakey@motorola.com>
Reviewed-by: Yi-Wei Zhao <gbjc64@motorola.com>
Reviewed-by: Igor Kovalenko <igork@motorola.com>
Submit-Approved: Jira Key <jirakey@motorola.com>

7 years agoOnly rename fgetpos/fsetpos/fseeko/ftello/funopen if we're N or newer.
Elliott Hughes [Sat, 18 Mar 2017 01:56:08 +0000 (18:56 -0700)]
Only rename fgetpos/fsetpos/fseeko/ftello/funopen if we're N or newer.

Without this, setting __FILE_OFFSET_BITS to 64 and targeting pre-L
made these functions entirely unavailable.

Bug: https://github.com/android-ndk/ndk/issues/333
Test: builds
Change-Id: Id17ae3c070f8b2650a9bc9aa2aa2e92c5fcdf4ad

7 years agoOnly rename sendfile to sendfile64 if we're L or newer.
Elliott Hughes [Sat, 18 Mar 2017 01:50:12 +0000 (18:50 -0700)]
Only rename sendfile to sendfile64 if we're L or newer.

Without this, setting __FILE_OFFSET_BITS to 64 and targeting pre-L
made sendfile entirely unavailable.

Bug: https://github.com/android-ndk/ndk/issues/333
Test: builds
Change-Id: I82d326ff244473dd5443632ff6c19d726d5e29ee

7 years agoMerge "Add libc optimizations to bionic for MIPS"
Prashant Patil [Fri, 17 Mar 2017 15:32:48 +0000 (15:32 +0000)]
Merge "Add libc optimizations to bionic for MIPS"
am: 9cb82a2c6b

Change-Id: I5b0417f2053ba28fb9cd104c8f51ef9b206bf194

7 years agoMerge "Add libc optimizations to bionic for MIPS"
Treehugger Robot [Fri, 17 Mar 2017 15:29:13 +0000 (15:29 +0000)]
Merge "Add libc optimizations to bionic for MIPS"

7 years agoRevert "linker: add more directories to default lib paths"
Dimitry Ivanov [Fri, 17 Mar 2017 00:08:23 +0000 (00:08 +0000)]
Revert "linker: add more directories to default lib paths"

This reverts commit 1daa18e73714150e26c4380840c793e406c11095.

To be replaced with customized linker-namespaces for different kind of binaries.

Bug: http://b/34407260
Change-Id: Ib4e480669bbdf44ee4f59bf05f07d3e082c348c9
Test: m

7 years agoMerge "Use libbase for realpath and dirname"
Dimitry Ivanov [Thu, 16 Mar 2017 20:42:01 +0000 (20:42 +0000)]
Merge "Use libbase for realpath and dirname"
am: e0561cb0c9

Change-Id: I7fe096792674724641548d62c9c6e7041ebce85b

7 years agoMerge "Use libbase for realpath and dirname"
Treehugger Robot [Thu, 16 Mar 2017 20:36:56 +0000 (20:36 +0000)]
Merge "Use libbase for realpath and dirname"

7 years agoUse libbase for realpath and dirname
Dimitry Ivanov [Thu, 16 Mar 2017 18:34:13 +0000 (11:34 -0700)]
Use libbase for realpath and dirname

Test: run bionic-unit-tests
Bug: http://b/31396973
Change-Id: Ie8dc60348b9c57892a77be6a24dadb42241f6b62

7 years agoAdd libc optimizations to bionic for MIPS
Prashant Patil [Thu, 16 Mar 2017 12:37:00 +0000 (18:07 +0530)]
Add libc optimizations to bionic for MIPS

Test: Used bionic tests available under bionic/tests folder.
      Tested for mips32r1/mips32r2/mips64r6 on emulators.

Change-Id: I589415ddc496df3f6067ae34cb33ca58b3a1f276
Signed-off-by: Prashant Patil <prashant.patil@imgtec.com>
7 years agoMerge "Split up the stack space tests into their own noinline functions."
Josh Gao [Thu, 16 Mar 2017 06:49:38 +0000 (06:49 +0000)]
Merge "Split up the stack space tests into their own noinline functions."
am: b2882dd429

Change-Id: Id6212e053b0f4b886146224a962fd8744d5e8eb4

7 years agoMerge "Split up the stack space tests into their own noinline functions."
Josh Gao [Thu, 16 Mar 2017 06:44:58 +0000 (06:44 +0000)]
Merge "Split up the stack space tests into their own noinline functions."

7 years agoSplit up the stack space tests into their own noinline functions.
Josh Gao [Thu, 16 Mar 2017 02:42:05 +0000 (19:42 -0700)]
Split up the stack space tests into their own noinline functions.

Prevent the compiler from being too smart and allocating a stack buffer
at the beginning of a function.

Bug: http://b/36206043
Test: 32/64-bit dynamic tests pass, static ones still don't
Change-Id: I90c575be43a9dd6c4fefc0d8b514f1ae0405b994

7 years agoMerge "Enable ld-android on linux_bionic builds"
Dan Willemsen [Wed, 15 Mar 2017 23:22:05 +0000 (23:22 +0000)]
Merge "Enable ld-android on linux_bionic builds"
am: 2390f83da4

Change-Id: Ic3c5db339df779def9c9ea0767706ace38977bf1

7 years agoMerge "Enable ld-android on linux_bionic builds"
Treehugger Robot [Wed, 15 Mar 2017 23:18:17 +0000 (23:18 +0000)]
Merge "Enable ld-android on linux_bionic builds"

7 years agoMerge "Add tests for pthread TLS leak."
Josh Gao [Wed, 15 Mar 2017 22:14:01 +0000 (22:14 +0000)]
Merge "Add tests for pthread TLS leak."
am: a4db9d6f41

Change-Id: I595112f67b875a1f8cc841adaf9adf3c10a792b4

7 years agoMerge "Add tests for pthread TLS leak."
Treehugger Robot [Wed, 15 Mar 2017 22:09:27 +0000 (22:09 +0000)]
Merge "Add tests for pthread TLS leak."

7 years agoEnable ld-android on linux_bionic builds
Dan Willemsen [Wed, 15 Mar 2017 21:23:50 +0000 (14:23 -0700)]
Enable ld-android on linux_bionic builds

Bug: 31559095
Test: Enable host bionic, run soong
Change-Id: If94927c66c0c2dc74c213ca403d45e73508b0025

7 years agoAdd tests for pthread TLS leak.
Josh Gao [Tue, 14 Mar 2017 00:10:46 +0000 (17:10 -0700)]
Add tests for pthread TLS leak.

Add tests that ensure that threads don't leak memory mappings after
they exit.

Bug: http://b/36045112
Test: /data/nativetest/bionic-unit-tests/bionic-unit-tests --gtest_filter=*leak*
Test: /data/nativetest64/bionic-unit-tests/bionic-unit-tests --gtest_filter=*leak*
Change-Id: Id0c1194b5d2bb7d89947b1ade16eb0d768d8c5b7

7 years agoMerge "Extract format_string function."
Dimitry Ivanov [Tue, 14 Mar 2017 01:05:07 +0000 (01:05 +0000)]
Merge "Extract format_string function."
am: 616b2d87ea

Change-Id: Iddd05400705c54e522fade3af9008a4832257200

7 years agoMerge "Extract format_string function."
Treehugger Robot [Tue, 14 Mar 2017 00:58:14 +0000 (00:58 +0000)]
Merge "Extract format_string function."

7 years agoMerge "linker: add more directories to default lib paths"
Jiyong Park [Tue, 14 Mar 2017 00:22:39 +0000 (00:22 +0000)]
Merge "linker: add more directories to default lib paths"
am: e5422d7d1f

Change-Id: Ie8dbc9b05827abf0a21ba29013cd381a69eaed73

7 years agoMerge "linker: add more directories to default lib paths"
Treehugger Robot [Tue, 14 Mar 2017 00:15:49 +0000 (00:15 +0000)]
Merge "linker: add more directories to default lib paths"

7 years agoExtract format_string function.
Dimitry Ivanov [Sat, 11 Mar 2017 22:35:38 +0000 (14:35 -0800)]
Extract format_string function.

Extract format_string function and add a test.

Test: run linker-unit-tests
Change-Id: I794a29aaf62e184438ce1a9224b88aa0586c17b5

7 years agoMerge "Support all architectures in seccomp"
Paul Lawrence [Mon, 13 Mar 2017 20:16:16 +0000 (20:16 +0000)]
Merge "Support all architectures in seccomp"
am: b1fe870a36

Change-Id: I1350a35e567ba7e8f37c7e5c424ac90e4577f58a

7 years agoMerge "Support all architectures in seccomp"
Treehugger Robot [Mon, 13 Mar 2017 20:10:48 +0000 (20:10 +0000)]
Merge "Support all architectures in seccomp"

7 years agoMerge "Apply ASan linker path translation to subdirectories."
Evgenii Stepanov [Mon, 13 Mar 2017 18:43:12 +0000 (18:43 +0000)]
Merge "Apply ASan linker path translation to subdirectories."
am: b3473f20db

Change-Id: I8163d0d5be8665511814a7468d26b7146bfb66e0

7 years agoMerge "Apply ASan linker path translation to subdirectories."
Treehugger Robot [Mon, 13 Mar 2017 18:37:29 +0000 (18:37 +0000)]
Merge "Apply ASan linker path translation to subdirectories."

7 years agoSupport all architectures in seccomp
Paul Lawrence [Fri, 17 Feb 2017 18:22:03 +0000 (10:22 -0800)]
Support all architectures in seccomp

Test: Make sure arm, x86, x86_64, mips, mips64 emulators boot
      Make sure sailfish still boots
      Ran CTS test from
      https://android-review.googlesource.com/#/c/348671/3 and it passed
      The instructions for how to run mips emulators above worked, but
      the CTS tests did not seem to actually run.

Change-Id: Iddee5acdb19ed32c7bd4657573313ca439cf6a49

7 years agoMerge "Fix the way malloc debug returns info."
Christopher Ferris [Mon, 13 Mar 2017 17:54:08 +0000 (17:54 +0000)]
Merge "Fix the way malloc debug returns info."
am: c0f275d028

Change-Id: I6679b9cd5d93017337da73ee2f69dd16b937b033

7 years agoMerge "Fix the way malloc debug returns info."
Christopher Ferris [Mon, 13 Mar 2017 17:47:31 +0000 (17:47 +0000)]
Merge "Fix the way malloc debug returns info."

7 years agoApply ASan linker path translation to subdirectories.
Evgenii Stepanov [Mon, 3 Oct 2016 22:09:28 +0000 (15:09 -0700)]
Apply ASan linker path translation to subdirectories.

Specifically, this change would translate /system/lib/hw/foo.so to /data/lib/hw/foo.so.

Bug: 30320104
Test: in SANITIZE_TARGET=address build, /proc/$PID/maps for
  system_server show libraries from /data/lib64/hw and not from
  /system/lib64/hw.
Change-Id: Ia1fa22fa1ca088fe76e41308762efe037541fc74

7 years agolinker: add more directories to default lib paths
Jiyong Park [Tue, 31 Jan 2017 08:32:46 +0000 (17:32 +0900)]
linker: add more directories to default lib paths

Due to b/33681361, libraries are now installed to different paths than
before. In order for linker to load libraries from the new paths, the
default lib paths are updated.

However, this patch is temporary; different paths must be used depending
on whether the process is executing vendor executable or framework
executable. For example, vendor executable should not be able to access
/system/lib/, which is for framework-internal libs. Similarly,
framework executables should not be able to access /vendor/lib.

We have several solutions (linker namespace and DT_RUNPATH) to support
the scenario, but haven't concluded which is better. Furthermore, if we
restrict the search path right now, it will break many parts of Android
that are not yet prepared for the restriction. So, until then, we
temporarily use the single search path for both framework/vendor
executables.

Test: build & run
Change-Id: I806e9b4379bce96653b1dd3354b9f4801abb0411

7 years agoMerge changes from topic 'debuggerd_fallback'
Josh Gao [Thu, 9 Mar 2017 22:08:30 +0000 (22:08 +0000)]
Merge changes from topic 'debuggerd_fallback'
am: cf96f35dd1

Change-Id: I875bbf95ca55919a5164752d2f49d5415ea6ded2

7 years agoMerge changes from topic 'debuggerd_fallback'
Josh Gao [Thu, 9 Mar 2017 22:03:30 +0000 (22:03 +0000)]
Merge changes from topic 'debuggerd_fallback'

* changes:
  linker_memory: allow fallback allocator to be turned on and off.
  Increase signal stack size on 32-bit to 16kB.

7 years agoFix the way malloc debug returns info.
Christopher Ferris [Thu, 9 Mar 2017 21:47:37 +0000 (13:47 -0800)]
Fix the way malloc debug returns info.

When I rewrote malloc debug, I accidentally thought that each
value returned in the info buffer contained the number of backtrace
frames in the backtrace. This was incorrect, it should have been
the total number of allocations with the same backtrace.

This is a temporary fix that sets that value to 1. The better fix is
to de-dupe backtraces and then return all allocations of the same size
with the same backtrace.

I updated the documents to describe this.

Bug: 31854476

Test: Unit tests pass.
Change-Id: Idf9efaa3d363923b5d7543d90dc7c65a0ed553d9

7 years agoMerge "Prefer property_contexts from /system & /vendor"
Alex Klyubin [Thu, 9 Mar 2017 19:25:30 +0000 (19:25 +0000)]
Merge "Prefer property_contexts from /system & /vendor"
am: b3b11edda1

Change-Id: Ibbc203c98f5456de744374636bbc06f6dda87d3c

7 years agoMerge "Prefer property_contexts from /system & /vendor"
Treehugger Robot [Thu, 9 Mar 2017 19:20:54 +0000 (19:20 +0000)]
Merge "Prefer property_contexts from /system & /vendor"

7 years agolinker_memory: allow fallback allocator to be turned on and off.
Josh Gao [Tue, 7 Mar 2017 01:46:47 +0000 (17:46 -0800)]
linker_memory: allow fallback allocator to be turned on and off.

Let the fallback allocator be used on multiple threads (as long as only
one thread is using it at once).

Bug: http://b/35858739
Change-Id: Id3e2fc6b7c093c6e56870524ffda28946de09e29

7 years agoIncrease signal stack size on 32-bit to 16kB.
Josh Gao [Tue, 7 Mar 2017 01:45:33 +0000 (17:45 -0800)]
Increase signal stack size on 32-bit to 16kB.

snprintf to a buffer of length PATH_MAX consumes about 7kB of stack.

Bug: http://b/35858739
Test: bionic-unit-tests --gtest_filter="*big_enough*"
Change-Id: I34a7f42c1fd2582ca0d0a9b7e7a5290bc1cc19b1

7 years agoPrefer property_contexts from /system & /vendor
Alex Klyubin [Wed, 8 Mar 2017 21:16:03 +0000 (13:16 -0800)]
Prefer property_contexts from /system & /vendor

This changes system_properties' initialize_properties to prefer
loading property_contexts from /system/etc/selinux &
/vendor/etc/selinux, while falling back to the pre-existing behavior
of loading from /.

Test: Device with *_property_contexts in / boots up fine, no denials
      to do with properties, getprop -Z lists correct labels.
Test: Device with *_property_contexts in /system & /vendor, but not
      in /, boots up fine, no denials to do with properties,
      getprop -Z lists correct labels.
Test: Device with *_property_contexts in /system & vendor and with
      empty *_property_contexts in / boots up fine, no denials to do
      with properties, getprop -Z lists correct labels.
Bug: 36002573

Change-Id: I15174acdf89ee8f5a96acf1e38a54d4214df51ef

7 years agoMerge "Fix leak of bionic TLS when threads are detached."
Josh Gao [Wed, 8 Mar 2017 23:18:27 +0000 (23:18 +0000)]
Merge "Fix leak of bionic TLS when threads are detached."
am: 77258163a2

Change-Id: If2dc487c82f5d0df0ab735e5a730d3cd31d87e87

7 years agoMerge "Fix leak of bionic TLS when threads are detached."
Treehugger Robot [Wed, 8 Mar 2017 23:13:13 +0000 (23:13 +0000)]
Merge "Fix leak of bionic TLS when threads are detached."

7 years agoMerge "Update timezone data to 2017a"
Joachim Sauer [Wed, 8 Mar 2017 13:47:22 +0000 (13:47 +0000)]
Merge "Update timezone data to 2017a"
am: e429bf2f69

Change-Id: Ic0fff327a4065b40383274f71b968eae6b528212

7 years agoMerge "Update timezone data to 2017a"
Joachim Sauer [Wed, 8 Mar 2017 11:53:22 +0000 (11:53 +0000)]
Merge "Update timezone data to 2017a"

7 years agoFix leak of bionic TLS when threads are detached.
Josh Gao [Wed, 8 Mar 2017 07:05:08 +0000 (23:05 -0800)]
Fix leak of bionic TLS when threads are detached.

__pthread_internal_free doesn't happen on threads that are detached,
causing the bionic TLS allocation (and guard pages) to be leaked.

Fix the leak, and name the allocations to make things apparent if this
ever happens again.

Bug: http://b/36045112
Test: manually ran a program that detached empty threads
Change-Id: Id1c7852b7384474244f7bf5a0f7da54ff962e0a1