Commit graph

21081 commits

Author SHA1 Message Date
Dan Albert
364aed595c Merge "Only rename mmap to mmap64 if we're L or newer."
am: e36fb9ed9e

Change-Id: Id3694c3dbb255887c208566757063bf51f08ec42
2017-03-20 22:00:16 +00:00
Treehugger Robot
e36fb9ed9e Merge "Only rename mmap to mmap64 if we're L or newer." 2017-03-20 21:53:41 +00:00
Dimitry Ivanov
5c4a58072f 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
2017-03-20 13:34:52 -07:00
Elliott Hughes
7a228993be Merge "Only rename fgetpos/fsetpos/fseeko/ftello/funopen if we're N or newer."
am: 8bd97b007e

Change-Id: I64aadf8f81717e78c2d96d6fe13ae034a5955557
2017-03-20 20:08:20 +00:00
Elliott Hughes
b6aae754bf Merge "Only rename sendfile to sendfile64 if we're L or newer."
am: f12d719b01

Change-Id: Id7bab533a4be040f5c3eac10a5df32e9b6820cfc
2017-03-20 20:08:09 +00:00
Elliott Hughes
8bd97b007e Merge "Only rename fgetpos/fsetpos/fseeko/ftello/funopen if we're N or newer." 2017-03-20 20:01:16 +00:00
Elliott Hughes
f12d719b01 Merge "Only rename sendfile to sendfile64 if we're L or newer." 2017-03-20 20:01:07 +00:00
Paul Lawrence
1551b7a9b2 Merge "Expand whitelist"
am: b43a222ee7

Change-Id: If0754c6fed7fc9d2704c6761e46643abb502a5ca
2017-03-20 19:57:36 +00:00
Dan Albert
785b249df0 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
2017-03-20 12:57:13 -07:00
Treehugger Robot
b43a222ee7 Merge "Expand whitelist" 2017-03-20 19:52:13 +00:00
Dimitry Ivanov
2a4a5e72f1 Add end() method to bionic's ScopedTrace class
Bug: http://b/27195126
Test: make
Change-Id: I8243629200606ca87b11cbd479ca093add42eb56
2017-03-20 12:45:55 -07:00
Paul Lawrence
822ecece23 Expand whitelist
Bug: 36435222
Test: App starts, plays game
Change-Id: If21f59e4d218be64fdac46115d35dc1ffb6fe771
2017-03-20 11:03:19 -07:00
Yuanyuan Zhong
9d150dd9a0 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>
2017-03-20 17:54:29 +00:00
Elliott Hughes
79a3db0304 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
2017-03-17 18:56:08 -07:00
Elliott Hughes
3645e71a43 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
2017-03-17 18:50:12 -07:00
Prashant Patil
2052e20fec Merge "Add libc optimizations to bionic for MIPS"
am: 9cb82a2c6b

Change-Id: I5b0417f2053ba28fb9cd104c8f51ef9b206bf194
2017-03-17 15:32:48 +00:00
Treehugger Robot
9cb82a2c6b Merge "Add libc optimizations to bionic for MIPS" 2017-03-17 15:29:14 +00:00
Dimitry Ivanov
a144697500 Revert "linker: add more directories to default lib paths"
This reverts commit 1daa18e737.

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

Bug: http://b/34407260
Change-Id: Ib4e480669bbdf44ee4f59bf05f07d3e082c348c9
Test: m
2017-03-17 00:08:23 +00:00
Dimitry Ivanov
b1a44366b8 Merge "Use libbase for realpath and dirname"
am: e0561cb0c9

Change-Id: I7fe096792674724641548d62c9c6e7041ebce85b
2017-03-16 20:42:01 +00:00
Treehugger Robot
e0561cb0c9 Merge "Use libbase for realpath and dirname" 2017-03-16 20:36:57 +00:00
Dimitry Ivanov
5b2cd3a358 Use libbase for realpath and dirname
Test: run bionic-unit-tests
Bug: http://b/31396973
Change-Id: Ie8dc60348b9c57892a77be6a24dadb42241f6b62
2017-03-16 11:47:08 -07:00
Prashant Patil
fcb877ac4b 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>
2017-03-16 10:26:24 -07:00
Josh Gao
96be725d4b Merge "Split up the stack space tests into their own noinline functions."
am: b2882dd429

Change-Id: Id6212e053b0f4b886146224a962fd8744d5e8eb4
2017-03-16 06:49:38 +00:00
Josh Gao
b2882dd429 Merge "Split up the stack space tests into their own noinline functions." 2017-03-16 06:44:59 +00:00
Josh Gao
61db9ac8da 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
2017-03-15 19:53:17 -07:00
Dan Willemsen
485abd93b7 Merge "Enable ld-android on linux_bionic builds"
am: 2390f83da4

Change-Id: Ic3c5db339df779def9c9ea0767706ace38977bf1
2017-03-15 23:22:05 +00:00
Treehugger Robot
2390f83da4 Merge "Enable ld-android on linux_bionic builds" 2017-03-15 23:18:18 +00:00
Josh Gao
0531178d46 Merge "Add tests for pthread TLS leak."
am: a4db9d6f41

Change-Id: I595112f67b875a1f8cc841adaf9adf3c10a792b4
2017-03-15 22:14:01 +00:00
Treehugger Robot
a4db9d6f41 Merge "Add tests for pthread TLS leak." 2017-03-15 22:09:27 +00:00
Dan Willemsen
8229596d41 Enable ld-android on linux_bionic builds
Bug: 31559095
Test: Enable host bionic, run soong
Change-Id: If94927c66c0c2dc74c213ca403d45e73508b0025
2017-03-15 14:24:40 -07:00
Josh Gao
7d15dc388a 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
2017-03-15 13:30:05 -07:00
Dimitry Ivanov
3e33d38606 Merge "Extract format_string function."
am: 616b2d87ea

Change-Id: Iddd05400705c54e522fade3af9008a4832257200
2017-03-14 01:05:07 +00:00
Treehugger Robot
616b2d87ea Merge "Extract format_string function." 2017-03-14 00:58:16 +00:00
Jiyong Park
1f45a4005d Merge "linker: add more directories to default lib paths"
am: e5422d7d1f

Change-Id: Ie8dbc9b05827abf0a21ba29013cd381a69eaed73
2017-03-14 00:22:39 +00:00
Treehugger Robot
e5422d7d1f Merge "linker: add more directories to default lib paths" 2017-03-14 00:15:50 +00:00
Dimitry Ivanov
2a6d9b2543 Extract format_string function.
Extract format_string function and add a test.

Test: run linker-unit-tests
Change-Id: I794a29aaf62e184438ce1a9224b88aa0586c17b5
2017-03-13 16:25:51 -07:00
Paul Lawrence
6692dda3da Merge "Support all architectures in seccomp"
am: b1fe870a36

Change-Id: I1350a35e567ba7e8f37c7e5c424ac90e4577f58a
2017-03-13 20:16:16 +00:00
Treehugger Robot
b1fe870a36 Merge "Support all architectures in seccomp" 2017-03-13 20:10:49 +00:00
Evgenii Stepanov
ecc9b03dad Merge "Apply ASan linker path translation to subdirectories."
am: b3473f20db

Change-Id: I8163d0d5be8665511814a7468d26b7146bfb66e0
2017-03-13 18:43:12 +00:00
Treehugger Robot
b3473f20db Merge "Apply ASan linker path translation to subdirectories." 2017-03-13 18:37:30 +00:00
Paul Lawrence
89fa81fda3 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
2017-03-13 18:26:50 +00:00
Christopher Ferris
0549e49416 Merge "Fix the way malloc debug returns info."
am: c0f275d028

Change-Id: I6679b9cd5d93017337da73ee2f69dd16b937b033
2017-03-13 17:54:08 +00:00
Christopher Ferris
c0f275d028 Merge "Fix the way malloc debug returns info." 2017-03-13 17:47:32 +00:00
Evgenii Stepanov
5b71500301 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
2017-03-13 10:04:36 -07:00
Jiyong Park
1daa18e737 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
2017-03-13 08:55:23 +09:00
Josh Gao
778751ff6f Merge changes from topic 'debuggerd_fallback'
am: cf96f35dd1

Change-Id: I875bbf95ca55919a5164752d2f49d5415ea6ded2
2017-03-09 22:08:30 +00:00
Josh Gao
cf96f35dd1 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.
2017-03-09 22:03:31 +00:00
Christopher Ferris
426b00a29b 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
2017-03-09 13:47:37 -08:00
Alex Klyubin
5dd51fa6bf Merge "Prefer property_contexts from /system & /vendor"
am: b3b11edda1

Change-Id: Ibbc203c98f5456de744374636bbc06f6dda87d3c
2017-03-09 19:25:30 +00:00
Treehugger Robot
b3b11edda1 Merge "Prefer property_contexts from /system & /vendor" 2017-03-09 19:20:55 +00:00