Commit graph

20218 commits

Author SHA1 Message Date
Christopher Ferris
08dacf8d7e Merge "Fix streaming(memcpy) performance on Cortex-A7" am: 0625beb270
am: 7373d2ed3d

Change-Id: I9c1bdbab92815d05cb5bfd01bc930cb9a1523a5f
2017-01-10 18:52:51 +00:00
Christopher Ferris
7373d2ed3d Merge "Fix streaming(memcpy) performance on Cortex-A7"
am: 0625beb270

Change-Id: I24340a1b7d9e93505abf517e4ecc24175c58a164
2017-01-10 18:47:45 +00:00
Christopher Ferris
0625beb270 Merge "Fix streaming(memcpy) performance on Cortex-A7" 2017-01-10 18:41:15 +00:00
Elliott Hughes
48567c33c8 Merge "Revert "Revert "move android_ids into bionic""" am: 940d460f59
am: 5720f1d55f

Change-Id: I688a8f734e891724545b17f25b222b05e38a7f39
2017-01-10 01:28:05 +00:00
Elliott Hughes
80a477c4ea Revert "Revert "move android_ids into bionic"" am: 3f6eee9793
am: 45be5dfe98

Change-Id: I56b1f2a8c10310d4ac54b0cb8a18951be6ef8bba
2017-01-10 01:27:57 +00:00
Elliott Hughes
5720f1d55f Merge "Revert "Revert "move android_ids into bionic"""
am: 940d460f59

Change-Id: Id5e500e39cd544fab4398318ff48289764af1e59
2017-01-10 01:23:34 +00:00
Elliott Hughes
45be5dfe98 Revert "Revert "move android_ids into bionic""
am: 3f6eee9793

Change-Id: I6a65710f926a76e48705fa4594f479f5d48df068
2017-01-10 01:23:26 +00:00
Elliott Hughes
940d460f59 Merge "Revert "Revert "move android_ids into bionic""" 2017-01-10 01:15:30 +00:00
Elliott Hughes
59b02d10d0 Merge "Dynamic linker errors should go to stderr." am: 74e1fe1cc0
am: 01a8e5bce3

Change-Id: Id029e9db75957d9d8572915f6122e81c5ac2bebb
2017-01-10 00:53:50 +00:00
Elliott Hughes
01a8e5bce3 Merge "Dynamic linker errors should go to stderr."
am: 74e1fe1cc0

Change-Id: I045e0116e73a69989e80d8bd281d38ee6c5112b9
2017-01-10 00:48:20 +00:00
Elliott Hughes
74e1fe1cc0 Merge "Dynamic linker errors should go to stderr." 2017-01-10 00:43:39 +00:00
Elliott Hughes
607d307b1f Dynamic linker errors should go to stderr.
Also add the missing \n to the end of the error.

Addresses review comment.

Bug: N/A
Test: manual
Change-Id: I7c997a71e6e02381d21ac762595ba90370db9d05
2017-01-09 14:44:28 -08:00
Elliott Hughes
c66afc5adf Merge "Exit rather than abort if asked to run a non-PIE executable." am: 71952ef625
am: 87e114bb7f

Change-Id: Id3ea80a163a9000073ab6a1d74ca675f3078d7c7
2017-01-09 22:38:12 +00:00
Elliott Hughes
87e114bb7f Merge "Exit rather than abort if asked to run a non-PIE executable."
am: 71952ef625

Change-Id: Ibb2940eef382fabce0c2c5252fe962c145f5be95
2017-01-09 22:33:13 +00:00
Elliott Hughes
71952ef625 Merge "Exit rather than abort if asked to run a non-PIE executable." 2017-01-09 22:26:35 +00:00
Elliott Hughes
7b1b019a71 Merge "Move to .md files for even trivial documentation." am: 39b6d59049
am: f561edeade

Change-Id: If984fd9b2ea3d66b871b484314e79a6994ca5d6a
2017-01-09 21:35:39 +00:00
Elliott Hughes
f561edeade Merge "Move to .md files for even trivial documentation."
am: 39b6d59049

Change-Id: Ia1950ac9cf0eaa9ca19904ae54d2903471e77626
2017-01-09 21:30:38 +00:00
Elliott Hughes
39b6d59049 Merge "Move to .md files for even trivial documentation." 2017-01-09 21:23:01 +00:00
Elliott Hughes
da7a0b105d Move to .md files for even trivial documentation.
So it's automatically displayed for folks browsing the source.

Bug: N/A
Test: N/A
Change-Id: I80e823415f1fb12ad8ce5348e926519b6e29580f
2017-01-07 12:47:28 -08:00
Elliott Hughes
3bdb31b51b Exit rather than abort if asked to run a non-PIE executable.
Each release we're asked to investigate tombstones from code that hasn't
been allowed to run on Android since L. This is just wasting our time,
and clearly the "obviousness" of aborting rather than exiting hasn't ensured
that all app developers rebuild their old binaries. In some cases it seems
like they run them "just in case" and don't care if they fail.

Bug: http://b/34112178
Test: ran libsupervisor.so from com.ss.android.article.news
Change-Id: I8a3f196c4755601a3888281566fbb7b817f01dca
2017-01-07 10:38:20 -08:00
Dimitry Ivanov
fe0a303a5a Merge "Fix bionic-unit-tests-static crash" am: 500b9be411
am: 1cfb85c199

Change-Id: Ic62ae01cc75b804ae3e04fbfd125dde9c536100f
2017-01-07 04:07:15 +00:00
Dimitry Ivanov
1cfb85c199 Merge "Fix bionic-unit-tests-static crash"
am: 500b9be411

Change-Id: I98d7587228db28d920354f925b0d20e3734838df
2017-01-07 04:03:15 +00:00
Treehugger Robot
500b9be411 Merge "Fix bionic-unit-tests-static crash" 2017-01-07 03:59:15 +00:00
Dimitry Ivanov
462ea664cf Fix bionic-unit-tests-static crash
The crash happens because for static executables call to dlopen
results in crash. This change moves dlopen() == nullptr check
from static variable to a functions so that the dlopen crash only
affects tests calling dlopen but not the whole executable.

Also make static tests report crashes to debugerd

Test: run bionic-unit-tests-static (for arm 32 and 64)
Bug: http://b/34129417
Change-Id: I7c4d8caf2a43250234fe24496b1c95eab572769f
2017-01-06 16:16:26 -08:00
Nick Kralevich
0354990de8 Merge "Make /dev/__properties__ 0711" am: 11798bcc35
am: 7d7e4a6955

Change-Id: I417801d251da1d8740cc70a0f9142de7ca98a829
2017-01-06 22:03:21 +00:00
Nick Kralevich
7d7e4a6955 Merge "Make /dev/__properties__ 0711"
am: 11798bcc35

Change-Id: I4c418dd0567013b003541977f5b2f97a35ac29e3
2017-01-06 21:59:19 +00:00
Treehugger Robot
11798bcc35 Merge "Make /dev/__properties__ 0711" 2017-01-06 21:53:06 +00:00
Nick Kralevich
bb59d47249 Make /dev/__properties__ 0711
Don't allow processes to read the contents of the directory
/dev/__properties__. This is an implementation detail of the properties
system that processes shouldn't be concerned with.

Test: Device boots and no problems reading individual properties.
Test: ls -la /dev/__properties__ fails
Change-Id: I00130fe4529525935654bff91e3cc59253b86e26
2017-01-06 12:07:20 -08:00
Josh Gao
07739bb921 Merge "Add declaration of tgkill to signal.h." am: d26267b8b9
am: f3847eb2d7

Change-Id: I334c6731594b92788fb6045107b34bc4a7182b68
2017-01-06 00:54:13 +00:00
Josh Gao
f3847eb2d7 Merge "Add declaration of tgkill to signal.h."
am: d26267b8b9

Change-Id: I398886a42d4d3d72b430159ac9c6dcaee5e26d09
2017-01-06 00:50:46 +00:00
Treehugger Robot
d26267b8b9 Merge "Add declaration of tgkill to signal.h." 2017-01-06 00:44:18 +00:00
Josh Gao
d3cfd26872 Add declaration of tgkill to signal.h.
Expose a useful function that we've had since Jelly Bean.

Bug: http://b/34111810
Test: TreeHugger
Change-Id: Iaf3097f224c09b533f36050cf21394ba148007ad
2017-01-05 15:15:12 -08:00
Dimitry Ivanov
8678a3ae2f Merge "Downgrade dynamic section checks to warning" am: fb07c36bc0
am: 131e51ad82

Change-Id: If0204cc1cf335d8d2b9e4c975fccb71aae42bb3d
2017-01-03 18:20:14 +00:00
Dimitry Ivanov
131e51ad82 Merge "Downgrade dynamic section checks to warning"
am: fb07c36bc0

Change-Id: I84efe43a93ae0689492ddf229c52e6710e00bc4a
2017-01-03 18:12:14 +00:00
Dimitry Ivanov
fb07c36bc0 Merge "Downgrade dynamic section checks to warning" 2017-01-03 18:03:04 +00:00
Dimitry Ivanov
e30c17fb6e Downgrade dynamic section checks to warning
For apps targeting pre-O releases print warn about
invalid dynamic section.

Bug: http://b/33842263
Test: Start an app in question and check logs for warning.
Test: Run bionic-unit-test --gtest_filter=dl*:Dl*
Change-Id: I80bd51f2133b956fc04e20a6538cccd50118c1b8
2016-12-28 16:21:49 -08:00
Chitti Babu Theegala
cbfdc7f905 Fix streaming(memcpy) performance on Cortex-A7
Stream-mode detection for L1 in A7-core is failing for
non cache-line-size (non 64 byte) aligned addresses.
This leads to destination data getting cached unnecessarily.
This A7 issue is confirmed by ARM

This issue is solved by aligning destination address to 64 byte before
entering the loop in memcpy routine.
Though we get lower score for micro_bench memcpy when L1 cache is bypassed,
it is desirable since it avoids unnecessary eviction of other process data
from L1 which is good for overall system performance.

Higher micro_bench memcpy numbers for < 64byte alignment shows good numbers
but this is at the cost of L1 cache pollution. During memcpy/memset,
unnecessary data is filled in L1 cache, this causes eviction of other
process data from L1.
For example during msmset(0), L1 cache gets filled with 0s which should be
avoided.

Additionally, there is another issue with cortex A7 that impacts performance
for all alignments / all Android Wear versions:
Store Buffer on A7 is 32 byte which limits the 32-byte back to back stores.
In the current implementation back to back 32bytes writes is causing CPU stalls.
This issue can be solved by interleaved Loads and Stores.
This helps in avoiding CPU stalls during memcpy by utilizing efficiently the
A7 internal load and store buffers.

Change-Id: Ie5f12f2bb5d86f627686730416279057e4f5f6d0
2016-12-19 15:11:43 -08:00
Josh Gao
4547b6c62f Merge "versioner: start using C++17." am: c816e9fa03
am: 73c9ecd00d

Change-Id: Ieee9af909db86141030204dff09e780e56be7a00
2016-12-16 22:34:27 +00:00
Josh Gao
73c9ecd00d Merge "versioner: start using C++17."
am: c816e9fa03

Change-Id: Ie148482169ab9cfae841a94b95b8266c520a45e6
2016-12-16 22:25:27 +00:00
Josh Gao
c816e9fa03 Merge "versioner: start using C++17." 2016-12-16 22:12:36 +00:00
Jeff Sharkey
3ef6bb6ff1 Merge "Define range of GIDs for cached app data." am: 54891837a0
am: ce7c613609

Change-Id: I564b6d18344325ff1e801590790d3813de269ad4
2016-12-15 23:14:36 +00:00
Colin Cross
4dadcd65a5 Merge "Convert versioner to Android.bp" am: f7e793ef7f
am: b508d37936

Change-Id: I257060f1bb6c5e97bb92ce7db3291e9e7321807d
2016-12-15 23:14:19 +00:00
Josh Gao
0a284f5c05 versioner: start using C++17.
Bug: None
Test: python run_tests.py
Change-Id: I10101d26b7816a83445f25b33b97ed47d42fd135
2016-12-15 13:56:00 -08:00
Jeff Sharkey
ce7c613609 Merge "Define range of GIDs for cached app data."
am: 54891837a0

Change-Id: I950bcf47451a474f89371d8124e833f0a4feea40
2016-12-15 21:52:00 +00:00
Jeff Sharkey
54891837a0 Merge "Define range of GIDs for cached app data." 2016-12-15 21:46:30 +00:00
Colin Cross
b508d37936 Merge "Convert versioner to Android.bp"
am: f7e793ef7f

Change-Id: I769e872a36fad4f47b2be026bed740e0330e67b4
2016-12-15 21:22:57 +00:00
Treehugger Robot
f7e793ef7f Merge "Convert versioner to Android.bp" 2016-12-15 21:16:04 +00:00
Colin Cross
68d6a9288a Convert versioner to Android.bp
See build/soong/README.md for more information.

Test: mma -j
Change-Id: I0e648143ac480c1257d9829f9b9087ee22005855
2016-12-15 10:44:41 -08:00
Dimitry Ivanov
e66f6b8803 Merge "Add test for elf-hash and packed relocations" am: 59dd61573f
am: 488eac109b

Change-Id: Id697ca86ba1a62e9163b767578535633b57cafd1
2016-12-15 18:41:43 +00:00
Dimitry Ivanov
b54a98abd2 Merge "Add test for empty symbol lookup" am: 22ef13ff9d
am: c0c74cb7dd

Change-Id: Ia51b0d333f381996cad50a1223805b4cc80377e2
2016-12-15 18:41:16 +00:00