OSDN Git Service

android-x86/bionic.git
7 years agoMerge "Make all the ELF relocation constants available."
Elliott Hughes [Wed, 19 Apr 2017 22:33:08 +0000 (22:33 +0000)]
Merge "Make all the ELF relocation constants available."
am: 64cdd0c886

Change-Id: I4ac93dde227ab7432db8ddd729a7a53683c1fa7a

7 years agoMerge "Make all the ELF relocation constants available."
Treehugger Robot [Wed, 19 Apr 2017 22:29:41 +0000 (22:29 +0000)]
Merge "Make all the ELF relocation constants available."

7 years agoMerge "Add missing required libraries"
Dimitry Ivanov [Wed, 19 Apr 2017 20:44:01 +0000 (20:44 +0000)]
Merge "Add missing required libraries"
am: cdf0b1a44c

Change-Id: Idd7708b031676181e090efedff322317cc8d1087

7 years agoMerge "Add missing required libraries"
Treehugger Robot [Wed, 19 Apr 2017 20:38:57 +0000 (20:38 +0000)]
Merge "Add missing required libraries"

7 years agoMerge "libc: fix typo in __RENAME macro"
George Burgess IV [Wed, 19 Apr 2017 20:35:00 +0000 (20:35 +0000)]
Merge "libc: fix typo in __RENAME macro"
am: 237c3ee0f8

Change-Id: I255a6fa13ba1a7ff23cb641533b70c984fc5d523

7 years agoMerge "libc: fix typo in __RENAME macro"
Treehugger Robot [Wed, 19 Apr 2017 20:31:41 +0000 (20:31 +0000)]
Merge "libc: fix typo in __RENAME macro"

7 years agoMake all the ELF relocation constants available.
Elliott Hughes [Wed, 19 Apr 2017 20:25:27 +0000 (13:25 -0700)]
Make all the ELF relocation constants available.

BSD thinks you should only get the relocation constants for your target
architecture, but it's often useful to have them all available at once.
Rearrange the headers to enable that.

Also update the (modified) NetBSD files to CVS HEAD.

Also remove the unused BSDism R_TYPE.

Bug: N/A
Test: builds
Change-Id: Iad5ef29192a732696e2b36af35144a9ca116aa46

7 years agoMerge "Add missing arch-specific AT_ cruft."
Elliott Hughes [Wed, 19 Apr 2017 19:31:57 +0000 (19:31 +0000)]
Merge "Add missing arch-specific AT_ cruft."
am: 0fc84517ab

Change-Id: I84c78677cc16ba61d22dc87c7ef6539612a2160c

7 years agoMerge "Add missing arch-specific AT_ cruft."
Treehugger Robot [Wed, 19 Apr 2017 19:26:41 +0000 (19:26 +0000)]
Merge "Add missing arch-specific AT_ cruft."

7 years agoAdd missing required libraries
Dimitry Ivanov [Wed, 19 Apr 2017 18:58:52 +0000 (11:58 -0700)]
Add missing required libraries

Test: m
Change-Id: Id8c8c69547fbfb0c8efe73b324c8b6dcd52aa8ca

7 years agolibc: fix typo in __RENAME macro
George Burgess IV [Wed, 19 Apr 2017 01:28:19 +0000 (18:28 -0700)]
libc: fix typo in __RENAME macro

Apparently __strncpy_real redirects to strcpy instead of strncpy for GCC
builds. This is bad, and it confused a project compiled by GCC that uses
strcpy.

I audited all of the FORTIFY-related __RENAMEs both manually and with a
script I hacked together; they all look correct aside from this one.

FWIW, with the cleaned up clang FORTIFY, lots of the `void foo()
__RENAME(foo)` will just become `void foo()` if this last thing I'm
working on gets through review.

Bug: 35329524
Test: Previously broken project now seems to work. Bullhead and Ryu
both build + boot.

Change-Id: Ib18ee3535ae31eb7e8ae846dc012f9b64cac80bf

7 years agoAdd missing arch-specific AT_ cruft.
Elliott Hughes [Wed, 19 Apr 2017 17:20:25 +0000 (10:20 -0700)]
Add missing arch-specific AT_ cruft.

AP_FPUCW is referenced by valgrind.

Bug: https://bugs.kde.org/show_bug.cgi?id=339945
Test: valgrind builds with one less hack
Change-Id: I7146f3709286662108cc82ba3c55ce935375a1f1

7 years agoMerge "Add PT_ARM_EXIDX."
Dan Albert [Tue, 18 Apr 2017 22:54:14 +0000 (22:54 +0000)]
Merge "Add PT_ARM_EXIDX."
am: 791989d250

Change-Id: Iada73c7e53f13533dc0cb68e3aafecb9e4d6d2e4

7 years agoMerge "Add PT_ARM_EXIDX."
Treehugger Robot [Tue, 18 Apr 2017 22:46:59 +0000 (22:46 +0000)]
Merge "Add PT_ARM_EXIDX."

7 years agoMerge "Move bionic_systrace.cpp over to CachedProperty."
Elliott Hughes [Tue, 18 Apr 2017 18:06:05 +0000 (18:06 +0000)]
Merge "Move bionic_systrace.cpp over to CachedProperty."
am: 7b37fa9384

Change-Id: I1c7aff4c4ba0df6772dc6b59b36146b3cad6bee8

7 years agoMerge "Move bionic_systrace.cpp over to CachedProperty."
Treehugger Robot [Tue, 18 Apr 2017 17:56:04 +0000 (17:56 +0000)]
Merge "Move bionic_systrace.cpp over to CachedProperty."

7 years agoMerge "Remove unused elf_machdep.h cruft."
Elliott Hughes [Tue, 18 Apr 2017 04:23:44 +0000 (04:23 +0000)]
Merge "Remove unused elf_machdep.h cruft."
am: 5dc0565c1b

Change-Id: Ibceba5ac8a233662b6784abe97f3abda653a5da0

7 years agoMerge "Remove unused elf_machdep.h cruft."
Elliott Hughes [Tue, 18 Apr 2017 04:16:04 +0000 (04:16 +0000)]
Merge "Remove unused elf_machdep.h cruft."

7 years agoMerge "Document DT_RUNPATH support."
Elliott Hughes [Tue, 18 Apr 2017 01:08:26 +0000 (01:08 +0000)]
Merge "Document DT_RUNPATH support."
am: fe56b52b23

Change-Id: I794c2a89e75b9ff18bc803fad30fc6c3c6c074fa

7 years agoMerge "Document DT_RUNPATH support."
Treehugger Robot [Tue, 18 Apr 2017 01:00:20 +0000 (01:00 +0000)]
Merge "Document DT_RUNPATH support."

7 years agoMerge "Un-deprecated __system_property_find_nth."
Elliott Hughes [Mon, 17 Apr 2017 23:53:29 +0000 (23:53 +0000)]
Merge "Un-deprecated __system_property_find_nth."
am: 57e7a0d853

Change-Id: I846fd3ccecff2853a852dda3ec4cd0671f3eca58

7 years agoMerge "Un-deprecated __system_property_find_nth."
Treehugger Robot [Mon, 17 Apr 2017 23:45:55 +0000 (23:45 +0000)]
Merge "Un-deprecated __system_property_find_nth."

7 years agoRemove unused elf_machdep.h cruft.
Elliott Hughes [Mon, 17 Apr 2017 23:25:09 +0000 (16:25 -0700)]
Remove unused elf_machdep.h cruft.

Also add a few missing include guards.

Bug: N/A
Test: builds
Change-Id: I9557303c81a4b11d430112528def038ecb5562a9

7 years agoAdd PT_ARM_EXIDX.
Dan Albert [Mon, 17 Apr 2017 23:06:59 +0000 (16:06 -0700)]
Add PT_ARM_EXIDX.

The updated LLVM libunwind needs this to be defined.

Test: make checkbuild
Bug: None
Change-Id: Ia20016a9e3becb37ea6902f1959d1884c1263e51

7 years agoDocument DT_RUNPATH support.
Elliott Hughes [Mon, 17 Apr 2017 23:01:23 +0000 (16:01 -0700)]
Document DT_RUNPATH support.

Bug: http://b/37328826
Test: N/A
Change-Id: Ia220f7f519e3cdd6193faff3b58d598505d4d0cf

7 years agoUn-deprecated __system_property_find_nth.
Elliott Hughes [Mon, 17 Apr 2017 21:53:07 +0000 (14:53 -0700)]
Un-deprecated __system_property_find_nth.

Netflix was using this, and looking the header file, although
__system_property_find_nth has been available since the beginning of time,
__system_property_foreach only appeared in 16. So anyone who wants to run
on pre-JellyBean devices would want to use __system_property_find_nth.

It's pretty much a one-liner in terms of __system_property_foreach anyway,
so it doesn't cost us anything to keep it.

Also restore slightly better tests than we originally removed.

Bug: http://b/36566667
Test: ran tests
Change-Id: Id268c2c2e848da17bb0a5a5420af234d9dcb829a

7 years agoMove bionic_systrace.cpp over to CachedProperty.
Elliott Hughes [Mon, 17 Apr 2017 21:12:25 +0000 (14:12 -0700)]
Move bionic_systrace.cpp over to CachedProperty.

This is the last bionic caller that was manually trying to cache
property values.

Bug: N/A
Test: builds and boots
Change-Id: Id66c0a05d8448f08c39dbf7189241e75615d44b4

7 years agoMerge "Link to the public post about clang FORTIFY."
Elliott Hughes [Mon, 17 Apr 2017 17:15:30 +0000 (17:15 +0000)]
Merge "Link to the public post about clang FORTIFY."
am: 661a2ed9df

Change-Id: I99af57847bb9c86849f54cae63f62a03339611a0

7 years agoMerge "Link to the public post about clang FORTIFY."
Treehugger Robot [Mon, 17 Apr 2017 17:09:40 +0000 (17:09 +0000)]
Merge "Link to the public post about clang FORTIFY."

7 years agoLink to the public post about clang FORTIFY.
Elliott Hughes [Sun, 16 Apr 2017 15:50:58 +0000 (08:50 -0700)]
Link to the public post about clang FORTIFY.

Bug: N/A
Test: builds
Change-Id: I1c2040fdd3c3bbe61a8adfc1f414fce50087a1b8

7 years agoMerge "Avoid "D linker : (null)" with debug.ld.all for dlerror."
Elliott Hughes [Sat, 15 Apr 2017 22:36:27 +0000 (22:36 +0000)]
Merge "Avoid "D linker  : (null)" with debug.ld.all for dlerror."
am: 9852fba985

Change-Id: Ie898fb5f0a9d6faa620295c45cb667ed18e9545d

7 years agoMerge "Avoid "D linker : (null)" with debug.ld.all for dlerror."
Treehugger Robot [Sat, 15 Apr 2017 22:30:57 +0000 (22:30 +0000)]
Merge "Avoid "D linker  : (null)" with debug.ld.all for dlerror."

7 years agoAvoid "D linker : (null)" with debug.ld.all for dlerror.
Elliott Hughes [Sat, 15 Apr 2017 16:11:15 +0000 (09:11 -0700)]
Avoid "D linker  : (null)" with debug.ld.all for dlerror.

We only want to know when dlerror is actually set. The previous change
to this logic moved it so that we only show actual updates to dlerror,
not every string that might end up in dlerror's output. This change
ignores cases where we're _clearing_ dlerror (which happens on every
call to dlerror).

Bug: http://b/37287938
Test: ran tests
Change-Id: I0c30ee199dc76d9aea165c1d90f694ead488518b

7 years agoMerge "Report the right error code from PropertyServiceConnection()"
Tom Cherry [Sat, 15 Apr 2017 00:24:03 +0000 (00:24 +0000)]
Merge "Report the right error code from PropertyServiceConnection()"
am: e4e69a174a

Change-Id: Ibc646fec5b456cdb4f7e56d787f31bed29094e74

7 years agoMerge "Report the right error code from PropertyServiceConnection()"
Treehugger Robot [Sat, 15 Apr 2017 00:18:29 +0000 (00:18 +0000)]
Merge "Report the right error code from PropertyServiceConnection()"

7 years agoMerge "Fix incorrect check."
Elliott Hughes [Fri, 14 Apr 2017 22:19:54 +0000 (22:19 +0000)]
Merge "Fix incorrect check."
am: 8d61f27757

Change-Id: I34c2a3984f1a89b1afd6d6b68e95c6908dbb7266

7 years agoMerge "Fix incorrect check."
Elliott Hughes [Fri, 14 Apr 2017 22:14:43 +0000 (22:14 +0000)]
Merge "Fix incorrect check."

7 years agoReport the right error code from PropertyServiceConnection()
Tom Cherry [Fri, 14 Apr 2017 20:45:20 +0000 (13:45 -0700)]
Report the right error code from PropertyServiceConnection()

We're currently reporting errno from the clean up call to close(),
which is much less interesting than the failing connect() call that
precedes it.  This change reports errno from the connect() call
instead.

Bug: 36249702
Test: Boot bullhead, bionic unit tests
Test: Fake bad end point and see relevant error returned
Change-Id: Icadec463f50cd0a2a2faa08f049a7996cd32786f

7 years agoFix incorrect check.
Christopher Ferris [Fri, 14 Apr 2017 19:58:24 +0000 (12:58 -0700)]
Fix incorrect check.

Bug: 37347846

Test: No error on data +%s
Change-Id: I7e88ea842af29ce4a366c25a3f79c09b63a25004

7 years agoMerge "libc: ARM: Add 32-bit Kryo memcpy"
Christopher Ferris [Fri, 14 Apr 2017 16:07:02 +0000 (16:07 +0000)]
Merge "libc: ARM: Add 32-bit Kryo memcpy"
am: da08de89b4

Change-Id: I2a5a7af047e4746543deae0d8fa84cbe45482553

7 years agoMerge "libc: ARM: Add 32-bit Kryo memcpy"
Christopher Ferris [Fri, 14 Apr 2017 16:00:00 +0000 (16:00 +0000)]
Merge "libc: ARM: Add 32-bit Kryo memcpy"

7 years agoMerge "Address review comments on the bionic tzdata loader."
Elliott Hughes [Fri, 14 Apr 2017 05:53:27 +0000 (05:53 +0000)]
Merge "Address review comments on the bionic tzdata loader."
am: e8a328058d

Change-Id: I2d4b4f7235575cbe40e480a8b90c81919b1993fe

7 years agoMerge "Address review comments on the bionic tzdata loader."
Treehugger Robot [Fri, 14 Apr 2017 05:43:46 +0000 (05:43 +0000)]
Merge "Address review comments on the bionic tzdata loader."

7 years agoMerge "Restore __system_property_find_nth version"
Dimitry Ivanov [Thu, 13 Apr 2017 19:33:13 +0000 (19:33 +0000)]
Merge "Restore __system_property_find_nth version"
am: 10f32d9c17

Change-Id: I088ad9be450d777dc02ee63a3f0d19f022420603

7 years agoMerge "Restore __system_property_find_nth version"
Treehugger Robot [Thu, 13 Apr 2017 19:26:03 +0000 (19:26 +0000)]
Merge "Restore __system_property_find_nth version"

7 years agolibc: ARM: Add 32-bit Kryo memcpy
Jake Weinstein [Fri, 26 Aug 2016 00:03:25 +0000 (20:03 -0400)]
libc: ARM: Add 32-bit Kryo memcpy

* Memcpy is based on Scorpion due to Qualcomm's
  128-bit cache line size optimizations.

* PLDOFFSET and PLDSIZE are from the ARM64 Kryo memcpy routine.

Below are the results of the benchmark, tested on a OnePlus 3 with MSM8996.

Before:
BM_string_memcpy/8                          1000k          8    0.934 GiB/s
BM_string_memcpy/64                         1000k         11    5.785 GiB/s
BM_string_memcpy/512                        1000k         25   19.918 GiB/s
BM_string_memcpy/1024                         50M         42   23.938 GiB/s
BM_string_memcpy/8Ki                          10M        473   17.291 GiB/s
BM_string_memcpy/16Ki                          5M        565   28.976 GiB/s
BM_string_memcpy/32Ki                       1000k       1105   29.631 GiB/s
BM_string_memcpy/64Ki                       1000k       2194   29.864 GiB/s

After:
BM_string_memcpy/8                          1000k          6    1.145 GiB/s
BM_string_memcpy/64                         1000k          7    8.560 GiB/s
BM_string_memcpy/512                        1000k         18   27.370 GiB/s
BM_string_memcpy/1024                         50M         33   30.340 GiB/s
BM_string_memcpy/8Ki                          10M        266   30.770 GiB/s
BM_string_memcpy/16Ki                          5M        553   29.599 GiB/s
BM_string_memcpy/32Ki                       1000k       1121   29.219 GiB/s
BM_string_memcpy/64Ki                       1000k       2208   29.678 GiB/s

Test: make otapackage
Test: Ran bionic unit tests on Pixel device. Verified memcpy wins on
Test: Pixel device.

Change-Id: Id7a9c37ef75a306dd5cf8d374d79d0fe83f8a3ba

7 years agoRestore __system_property_find_nth version
Dimitry Ivanov [Thu, 13 Apr 2017 01:05:56 +0000 (18:05 -0700)]
Restore __system_property_find_nth version

Moving this to LIBC_DEPRECATED caused compatibility
problems for some apps.

Bug: http://b/36566667
Test: launch app and check that it does not crash
Change-Id: I470f916ef818ff62ff5391b3a0c86dd44c1e8cd0
(cherry picked from commit 2167e74f168a192ca9c63abee1c03197326b83d7)

7 years agoMerge "libc: use Cortex-A7/A53 memset on Kryo"
Christopher Ferris [Thu, 13 Apr 2017 17:56:35 +0000 (17:56 +0000)]
Merge "libc: use Cortex-A7/A53 memset on Kryo"
am: f568ccd34a

Change-Id: If12956b30f761ac0bfd613df455a84a94c6aaab9

7 years agoMerge "libc: use Cortex-A7/A53 memset on Kryo"
Christopher Ferris [Thu, 13 Apr 2017 17:45:53 +0000 (17:45 +0000)]
Merge "libc: use Cortex-A7/A53 memset on Kryo"

7 years agoMerge "Add seccomp blacklist, and exclude swap functions"
Paul Lawrence [Thu, 13 Apr 2017 15:18:23 +0000 (15:18 +0000)]
Merge "Add seccomp blacklist, and exclude swap functions"
am: a8f9c8069e

Change-Id: Ie254d107b740fade338ac320db5a3349dc4f85c8

7 years agoMerge "Add seccomp blacklist, and exclude swap functions"
Treehugger Robot [Thu, 13 Apr 2017 15:09:46 +0000 (15:09 +0000)]
Merge "Add seccomp blacklist, and exclude swap functions"

7 years agolibc: use Cortex-A7/A53 memset on Kryo
Jake Weinstein [Fri, 7 Apr 2017 18:55:53 +0000 (14:55 -0400)]
libc: use Cortex-A7/A53 memset on Kryo

Tested on OnePlus 3 with MSM8996

Before (Krait):
BM_string_memset/8                          1000k          7    1.071 GiB/s
BM_string_memset/64                         1000k          9    6.720 GiB/s
BM_string_memset/512                        1000k         19   26.699 GiB/s
BM_string_memset/1024                       1000k         29   34.214 GiB/s
BM_string_memset/8Ki                          10M        184   44.302 GiB/s
BM_string_memset/16Ki                          5M        351   46.656 GiB/s
BM_string_memset/32Ki                          5M        686   47.744 GiB/s
BM_string_memset/64Ki                       1000k       1355   48.342 GiB/s

After (A7/A53):
BM_string_memset/8                          1000k          7    1.017 GiB/s
BM_string_memset/64                         1000k          7    8.039 GiB/s
BM_string_memset/512                        1000k         13   37.976 GiB/s
BM_string_memset/1024                       1000k         21   47.595 GiB/s
BM_string_memset/8Ki                          10M        150   54.354 GiB/s
BM_string_memset/16Ki                         10M        285   57.336 GiB/s
BM_string_memset/32Ki                          5M        555   59.016 GiB/s
BM_string_memset/64Ki                       1000k       1097   59.720 GiB/s

Test: make otapackage
Test: Verified this wins in all dimensions on a Pixel device.

Change-Id: I4cb72cc0363877de7c41d6f991149fda42fd0b4b

7 years agoAddress review comments on the bionic tzdata loader.
Elliott Hughes [Wed, 12 Apr 2017 19:03:44 +0000 (12:03 -0700)]
Address review comments on the bionic tzdata loader.

Bug: N/A
Test: ran tests
Change-Id: Ia7e27a2f93fe814e46b0912ce358b72651192173

7 years agoAdd seccomp blacklist, and exclude swap functions
Paul Lawrence [Wed, 12 Apr 2017 17:02:54 +0000 (10:02 -0700)]
Add seccomp blacklist, and exclude swap functions

Bug: 37253880
Test: Make sure device boots
      Run pylint on genseccomp.py, test_genseccomp.py
      Run test_genseccomp.py
      Run new CTS test
      cts-tradefed run cts -m CtsSecurityTestCases -t android.security.cts.SeccompTest

Change-Id: I833a5364a1481d65173e77654da1798dc45a3f9d

7 years agoMerge "Move libc_logging.cpp over to CachedProperty."
Elliott Hughes [Wed, 12 Apr 2017 19:11:10 +0000 (19:11 +0000)]
Merge "Move libc_logging.cpp over to CachedProperty."
am: 2be8013027

Change-Id: I806f666717ae5110933a0e8a7492cc53a87bf444

7 years agoMerge "Move libc_logging.cpp over to CachedProperty."
Treehugger Robot [Wed, 12 Apr 2017 19:02:14 +0000 (19:02 +0000)]
Merge "Move libc_logging.cpp over to CachedProperty."

7 years agoMerge "The workaround for apps using older version of soinfos"
Dimitry Ivanov [Wed, 12 Apr 2017 18:55:52 +0000 (18:55 +0000)]
Merge "The workaround for apps using older version of soinfos"
am: 735f41afc4

Change-Id: I3d672808ed8ff20d2201f896366635886ee760fb

7 years agoMerge "The workaround for apps using older version of soinfos"
Treehugger Robot [Wed, 12 Apr 2017 18:41:26 +0000 (18:41 +0000)]
Merge "The workaround for apps using older version of soinfos"

7 years agoMerge "Move localtime.c over to CachedProperty."
Elliott Hughes [Wed, 12 Apr 2017 18:24:56 +0000 (18:24 +0000)]
Merge "Move localtime.c over to CachedProperty."
am: 21d4a9ac6b

Change-Id: Idc7acb8a7825c9599fd53bbe7f00976db4dc5de4

7 years agoMerge "Move localtime.c over to CachedProperty."
Treehugger Robot [Wed, 12 Apr 2017 18:15:51 +0000 (18:15 +0000)]
Merge "Move localtime.c over to CachedProperty."

7 years agoThe workaround for apps using older version of soinfos
Dimitry Ivanov [Tue, 11 Apr 2017 22:22:49 +0000 (15:22 -0700)]
The workaround for apps using older version of soinfos

Skip the check for accessibility in the case soinfo
does not have primary/secondary namespaces associated
with them.

Bug: http://b/37191433
Test: start an app from http://b/37191433 make sure it does not crash on lunch
Change-Id: Id4c0bdab4dfc6bc8a33fc275d71e325518e0759f
(cherry picked from commit 97b4c5f2649db06661e45147f21a2ab26340ad89)

7 years agoMerge "'make bionic-unit-tests' now builds all the required binaries"
Dimitry Ivanov [Wed, 12 Apr 2017 08:00:46 +0000 (08:00 +0000)]
Merge "'make bionic-unit-tests' now builds all the required binaries"
am: faf7f3542a

Change-Id: Ic1668e2b3b5c39fc815fe3d929a04d5e707d0f26

7 years agoMerge "'make bionic-unit-tests' now builds all the required binaries"
Treehugger Robot [Wed, 12 Apr 2017 07:54:02 +0000 (07:54 +0000)]
Merge "'make bionic-unit-tests' now builds all the required binaries"

7 years agoMerge "Remove the useless lock from CachedProperty."
Elliott Hughes [Wed, 12 Apr 2017 06:07:39 +0000 (06:07 +0000)]
Merge "Remove the useless lock from CachedProperty."
am: ff82ce8746

Change-Id: I1a298b6558d0487a2a851ce819d9fddbe3898a62

7 years agoMerge "Remove the useless lock from CachedProperty."
Treehugger Robot [Wed, 12 Apr 2017 05:59:56 +0000 (05:59 +0000)]
Merge "Remove the useless lock from CachedProperty."

7 years agoRemove the useless lock from CachedProperty.
Elliott Hughes [Wed, 12 Apr 2017 00:23:37 +0000 (17:23 -0700)]
Remove the useless lock from CachedProperty.

Also document that the caller should provide locking at an
appropriate scope.

Bug: N/A
Test: ran tests
Change-Id: Ib84802fd8b9dbe69f98feab80edef05549a3f73e

7 years agoMerge "Mark CRT objects as vendor available"
Dan Willemsen [Wed, 12 Apr 2017 00:13:20 +0000 (00:13 +0000)]
Merge "Mark CRT objects as vendor available"
am: 53a9bcdcf5

Change-Id: I0cbea9f010022ca4e99586279f564279d2140ed4

7 years agoMerge "Mark CRT objects as vendor available"
Dan Willemsen [Wed, 12 Apr 2017 00:06:51 +0000 (00:06 +0000)]
Merge "Mark CRT objects as vendor available"

7 years agoMark CRT objects as vendor available
Dan Willemsen [Fri, 7 Apr 2017 21:09:05 +0000 (14:09 -0700)]
Mark CRT objects as vendor available

This will build separate copies of the CRT for vendor vs system when
BOARD_VNDK_VERSION is set. We'll be able to change crtbrand / etc as
needed with #ifdef __ANDROID_VNDK__ and similar.

Bug: 36426473
Bug: 36079834
Test: Put #ifdef __ANDROID_VNDK__ into crtbrand.S, see changes
Change-Id: I7db0cccfe94d144f072e7cef23832884f3c066f0

7 years agoMerge "Don't let missing Treble property context files affect errno."
Elliott Hughes [Tue, 11 Apr 2017 23:53:15 +0000 (23:53 +0000)]
Merge "Don't let missing Treble property context files affect errno."
am: d517ac2dcd

Change-Id: I55c6abb9ea1a2813add0f34435dbd4827253d006

7 years agoMerge "Don't let missing Treble property context files affect errno."
Treehugger Robot [Tue, 11 Apr 2017 23:48:56 +0000 (23:48 +0000)]
Merge "Don't let missing Treble property context files affect errno."

7 years agoMerge "Fix missing parse_open_file method."
Christopher Ferris [Tue, 11 Apr 2017 23:24:13 +0000 (23:24 +0000)]
Merge "Fix missing parse_open_file method."
am: 94f58b2f0c

Change-Id: I0dd3e749a876b3df40822267f25324c43568dce7

7 years ago'make bionic-unit-tests' now builds all the required binaries
Dimitry Ivanov [Mon, 10 Apr 2017 23:52:25 +0000 (16:52 -0700)]
'make bionic-unit-tests' now builds all the required binaries

Test: make
Change-Id: Ie2f5dffaa4a09eba6714ced8ab0043fd7446bee5

7 years agoMerge "Fix missing parse_open_file method."
Christopher Ferris [Tue, 11 Apr 2017 23:14:55 +0000 (23:14 +0000)]
Merge "Fix missing parse_open_file method."

7 years agoMove libc_logging.cpp over to CachedProperty.
Elliott Hughes [Tue, 11 Apr 2017 22:18:38 +0000 (15:18 -0700)]
Move libc_logging.cpp over to CachedProperty.

Bug: N/A
Test: ran tests
Change-Id: I50f9065799e783df961e1275a4cda671fcf0fd32

7 years agoMove localtime.c over to CachedProperty.
Elliott Hughes [Tue, 11 Apr 2017 21:44:51 +0000 (14:44 -0700)]
Move localtime.c over to CachedProperty.

Since localtime.c is C, this entails pulling our code out into its own
C++ file, which we should probably have done years ago anyway.

Bug: N/A
Test: ran tests, and manually tested via Settings
Change-Id: Ifc787a553e8f739a87641a2d35321aca40a47286

7 years agoDon't let missing Treble property context files affect errno.
Elliott Hughes [Tue, 11 Apr 2017 20:38:36 +0000 (13:38 -0700)]
Don't let missing Treble property context files affect errno.

User code on a non-treble device was starting with errno == ENOENT rather
than 0 because of this treble support:

  openat(AT_FDCWD, "/property_contexts", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
  faccessat(AT_FDCWD, "/system/etc/selinux/plat_property_contexts", R_OK) = -1 ENOENT (No such file or directory)

This caused us to fail some toybox tests by reporting bogus errno values
where errno should have been left unset:

  PASS: date -d @0
  FAIL: date -d @0x123
  echo -ne '' | TZ=UTC date -d @0x123 2>&1
  --- expected
  +++ actual
  @@ -1 +1 @@
  -date: bad date '@0x123'
  +date: bad date '@0x123': No such file or directory
  PASS: date -d 06021234
  PASS: date -d 060212341982
  FAIL: date -d 123
  echo -ne '' | TZ=UTC date -d 123 2>&1
  --- expected
  +++ actual
  @@ -1 +1 @@
  -date: bad date '123'
  +date: bad date '123': No such file or directory
  PASS: date -d 1110143115.30
  PASS: date -d 111014312015.30
  PASS: date Unix time missing @

Bug: http://b/37248982
Test: ran tests
Change-Id: Iacf08c89dbe207ec53a7837e6ac7f78f5541ef35

7 years agoMerge "Remove .(ll)ndk suffix from (ll)ndk_library"
Dan Willemsen [Tue, 11 Apr 2017 16:53:25 +0000 (16:53 +0000)]
Merge "Remove .(ll)ndk suffix from (ll)ndk_library"
am: 6c0468bba7

Change-Id: Ib271eaff5daeb96c9e58987f38b1813c5c72ab8a

7 years agoFix missing parse_open_file method.
Alessio Balsini [Tue, 11 Apr 2017 16:27:29 +0000 (18:27 +0200)]
Fix missing parse_open_file method.

gensyscalls.py was failing to execute because of a missing "self"
keyword when calling parse_open_file.

Test: manual test running gensyscalls.py.

Change-Id: I78db2cba704c5ca56a730019e36601a7ccd069f8

7 years agoMerge "Remove .(ll)ndk suffix from (ll)ndk_library"
Treehugger Robot [Tue, 11 Apr 2017 16:19:14 +0000 (16:19 +0000)]
Merge "Remove .(ll)ndk suffix from (ll)ndk_library"

7 years agoRemove .(ll)ndk suffix from (ll)ndk_library
Dan Willemsen [Fri, 7 Apr 2017 21:09:18 +0000 (14:09 -0700)]
Remove .(ll)ndk suffix from (ll)ndk_library

Soong handles these automatically now.

Bug: 33241851
Test: Android-aosp_arm.mk is the same before/after
Test: build.ninja is the same before/after
Test: build-aosp_arm.ninja is the same before/after
Merged-In: Ibfe4cf5db732d9007b1cc12dbc523c427de1b23d
Change-Id: Ibfe4cf5db732d9007b1cc12dbc523c427de1b23d

7 years agoMerge "Send developers straight to the text relocation docs."
Elliott Hughes [Tue, 11 Apr 2017 06:15:09 +0000 (06:15 +0000)]
Merge "Send developers straight to the text relocation docs."
am: f17048bfb8

Change-Id: I84931113b8da9b7cabf1af1ce7fa65a798bbe106

7 years agoMerge "Send developers straight to the text relocation docs."
Treehugger Robot [Tue, 11 Apr 2017 06:07:06 +0000 (06:07 +0000)]
Merge "Send developers straight to the text relocation docs."

7 years agoSend developers straight to the text relocation docs.
Elliott Hughes [Mon, 10 Apr 2017 16:52:33 +0000 (09:52 -0700)]
Send developers straight to the text relocation docs.

It's been years since we allowed text relocations, but I had a developer
ask me how to fix them at last week's O Developer Day. They'd never seen
our docs, so let's try to fix that for anyone else who's still confused...

Bug: N/A
Test: builds
Change-Id: I9202a7b0a3f024041b646c43c87585f4fab22d09

7 years agoMerge "Refactor Config from a struct to a class."
Christopher Ferris [Mon, 10 Apr 2017 20:00:31 +0000 (20:00 +0000)]
Merge "Refactor Config from a struct to a class."
am: bdbab30e32

Change-Id: Ie6fe456974ad3d17a66a93682f66d8bd282dc061

7 years agoMerge "Refactor Config from a struct to a class."
Christopher Ferris [Mon, 10 Apr 2017 19:49:37 +0000 (19:49 +0000)]
Merge "Refactor Config from a struct to a class."

7 years agoMerge "Add LLNDK stub libraries for the VNDK"
Dan Willemsen [Fri, 7 Apr 2017 21:31:19 +0000 (21:31 +0000)]
Merge "Add LLNDK stub libraries for the VNDK"
am: df244d876a

Change-Id: I664a8fc016c5a60edbce1f924cbc6595e01c2171

7 years agoMerge "Add LLNDK stub libraries for the VNDK"
Dan Willemsen [Fri, 7 Apr 2017 21:21:32 +0000 (21:21 +0000)]
Merge "Add LLNDK stub libraries for the VNDK"

7 years agoMerge "versioner: fix LLVM assertion failure."
Josh Gao [Thu, 6 Apr 2017 23:46:17 +0000 (23:46 +0000)]
Merge "versioner: fix LLVM assertion failure."
am: a07033e0dc

Change-Id: Ib23326e7a3ebecc70ceeb8ff40fcd592ead41c91

7 years agoMerge "versioner: fix LLVM assertion failure."
Treehugger Robot [Thu, 6 Apr 2017 23:35:51 +0000 (23:35 +0000)]
Merge "versioner: fix LLVM assertion failure."

7 years agoMerge "Move scopeguard into android::base"
Tom Cherry [Thu, 6 Apr 2017 22:45:19 +0000 (22:45 +0000)]
Merge "Move scopeguard into android::base"
am: c40af334c7

Change-Id: I4f507f5c2304b0ea00cadcb0693207e0a3c95180

7 years agoMerge "Enable FORTIFY unit tests for clang"
George Burgess IV [Thu, 6 Apr 2017 22:42:13 +0000 (22:42 +0000)]
Merge "Enable FORTIFY unit tests for clang"
am: afb59c3e42

Change-Id: Ie05c82311eb58c8a5593d2a9bb83d0085659c378

7 years agoMerge "Move scopeguard into android::base"
Tom Cherry [Thu, 6 Apr 2017 22:41:02 +0000 (22:41 +0000)]
Merge "Move scopeguard into android::base"

7 years agoRefactor Config from a struct to a class.
Christopher Ferris [Thu, 6 Apr 2017 02:13:03 +0000 (19:13 -0700)]
Refactor Config from a struct to a class.

This should make it easier to add new options, and to add options that
are complex. For example, I want to modify the behavior of
record_allocs_file so that it also enables record_allocs to a default
state.

Test: All unit tests pass.
Test: Enable the backtrace option and restart.
Change-Id: Idf5cdeed06ade3bc2c8ae39d228734bf65209b4f

7 years agoMerge "Enable FORTIFY unit tests for clang"
Treehugger Robot [Thu, 6 Apr 2017 22:30:20 +0000 (22:30 +0000)]
Merge "Enable FORTIFY unit tests for clang"

7 years agoMerge "Add support for disabling the greylist."
Elliott Hughes [Thu, 6 Apr 2017 20:45:35 +0000 (20:45 +0000)]
Merge "Add support for disabling the greylist."
am: 2d389ffee9

Change-Id: I3c2dd8677b61b0ecae87969405040dfef25e843b

7 years agoversioner: fix LLVM assertion failure.
Josh Gao [Thu, 6 Apr 2017 19:57:22 +0000 (12:57 -0700)]
versioner: fix LLVM assertion failure.

MemoryBuffer::getOpenFileSlice asserts that the map size passed in
isn't -1 (presumably because the offset can be nonzero). Switch to
getOpenFile, which results in an identical call to the implementation
function without the assert.

Bug: http://b/37002637
Test: export FORCE_BUILD_LLVM_COMPONENTS=true
      export FORCE_BUILD_LLVM_DEBUG=true
      export FORCE_BUILD_LLVM_DISABLE_NDEBUG=true
      mma -j && versioner

Change-Id: Ib610db9e07429aa3f64128eaef6ef555c4d1868e

7 years agoMerge "Add support for disabling the greylist."
Treehugger Robot [Thu, 6 Apr 2017 20:29:40 +0000 (20:29 +0000)]
Merge "Add support for disabling the greylist."

7 years agoEnable FORTIFY unit tests for clang
George Burgess IV [Thu, 6 Apr 2017 18:26:11 +0000 (11:26 -0700)]
Enable FORTIFY unit tests for clang

And add a thing to remind us to enable the malloc FORTIFY test when we
pull a new clang in.

Bug: 34747525
Test: vts -m BionicUnitTests on bullhead
Change-Id: If341a27756d608a0fa77ba6518e9bcc725f7632c

7 years agoAdd support for disabling the greylist.
Elliott Hughes [Fri, 24 Mar 2017 00:42:49 +0000 (17:42 -0700)]
Add support for disabling the greylist.

Useful for testing whether apps have actually stopped using greylisted
libraries even if they still have references to them in their apk to support
old Android releases but also haven't bumped their targetSdkVersion yet.

Since we already have two expensive __system_property_get calls and this
would add a third, optimize two (but leave the third since it's not
obviously amenable to optimization). None of this matters for user builds,
but I don't want userdebug/eng to have distractingly different performance.

(cherrypick of 7933bec2872aa1c3430149c7649726333c0ac9d8.)

Bug: http://b/36106661
Test: ran "can you escape 5" with and without this property
Change-Id: Id9a804695c1dca9b4be2ebd0e72f01817bb13cba