Elliott Hughes
b32552496c
Merge "Stop defining local "unused" macros now this is C++."
...
am: 3183c567b0
Change-Id: I34c0d37280510810ac27de45b33403b362ad0973
2017-12-01 16:50:26 +00:00
Treehugger Robot
f896d274bc
Merge "Remove unnecessary restorecon."
2017-12-01 16:47:10 +00:00
Elliott Hughes
c8022a3efc
Merge "std::string_view is no longer experimental."
2017-12-01 16:42:25 +00:00
Elliott Hughes
3183c567b0
Merge "Stop defining local "unused" macros now this is C++."
2017-12-01 16:42:20 +00:00
Bowgo Tsai
43da9ee604
Merge "init/selinux: renames nonplat_declaration.cil to plat_pub_versioned.cil"
...
am: d06a0c035b
Change-Id: I9d5f5c441dc3669417787f69116f6e332807d337
2017-12-01 05:06:43 +00:00
Treehugger Robot
d06a0c035b
Merge "init/selinux: renames nonplat_declaration.cil to plat_pub_versioned.cil"
2017-12-01 05:02:47 +00:00
Dan Willemsen
fe75fb7cef
Merge "Mark more win32 parameters as unused"
...
am: b4d6b8ff8d
Change-Id: I69064a1a0eaeb4ab0450b5c824abc13657023e00
2017-12-01 02:05:00 +00:00
Treehugger Robot
b4d6b8ff8d
Merge "Mark more win32 parameters as unused"
2017-12-01 01:56:35 +00:00
Elliott Hughes
e805883a2b
std::string_view is no longer experimental.
...
Bug: N/A
Test: builds
Change-Id: I8f022fdc3ebaebd8aa250414569485a752f98da7
2017-11-30 16:32:15 -08:00
Elliott Hughes
38d2567c9f
Stop defining local "unused" macros now this is C++.
...
Bug: N/A
Test: builds, boots
Change-Id: I3eb075d5003fa7cdc6690f4af29a296e22be257c
2017-11-30 16:24:36 -08:00
Joel Galenson
fef8644f8d
Remove unnecessary restorecon.
...
Now that creating a symlink in init automatically sets its
context, we do not need to call restorecon manually.
Bug: 69965807
Test: Booted device and tested wifi and camera.
Change-Id: I0863198f2c2bfce79566b5320c7ef035698f3afb
2017-11-30 15:39:43 -08:00
Dan Willemsen
22088fd2d1
Mark more win32 parameters as unused
...
Missed one new instance with my last patch.
Bug: 69933068
Test: m native-host-cross
Change-Id: Ib6d0b994131a0011b3a2f1a4633b21756a9d6732
2017-11-30 23:35:42 +00:00
Elliott Hughes
bfb96796a4
Merge "use std::hash instead of hashing byte by byte"
...
am: aaa0bbce8e
Change-Id: Iee321900f8ef386cd118d874c31c5b0d2741551a
2017-11-30 23:25:55 +00:00
Elliott Hughes
aaa0bbce8e
Merge "use std::hash instead of hashing byte by byte"
2017-11-30 23:18:19 +00:00
James Hawkins
f4444f058c
bootstat: Add four more boot reasons.
...
Bug: none
Test: none
Change-Id: Ifd62e3a8bb6142e89fcde819eab1caba3d7933b7
2017-11-30 15:01:40 -08:00
Dan Willemsen
829ecaa808
Merge "Fix / suppress new unused warnings for mingw+clang"
...
am: f106bb6bb8
Change-Id: I4e4ac1ff248bd437dd721cac8d55b4925e7af5a8
2017-11-30 22:43:14 +00:00
Dan Willemsen
f106bb6bb8
Merge "Fix / suppress new unused warnings for mingw+clang"
2017-11-30 22:31:54 +00:00
Jim Kaye
42f9a44000
Merge "Fix typos in ADB documentation"
...
am: 017203b140
Change-Id: I263536093d33e7e1783049834862346e47643723
2017-11-30 21:53:43 +00:00
Treehugger Robot
017203b140
Merge "Fix typos in ADB documentation"
2017-11-30 21:41:26 +00:00
Alin Jerpelea
fa7958e1fb
add odm partition to ld.config.legacy
...
change is needed to be able to load libraries from /odm partition
/odm partition should have the lowest priority so that it can not override
the libraries from /vendor or /system partitions
Test: libraries are loaded ok.
Change-Id: Ifdfc22a3406ae3ad1fde53618d4120fd0498f615
Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2017-12-01 06:14:11 +09:00
Jim Kaye
ab74e068ee
Fix typos in ADB documentation
...
Bug: None
Test: None
Change-Id: Ib036eefc602bf0ebac869146b04eea225cae39ef
2017-11-30 10:57:51 -08:00
James Hawkins
0a86c0c1ed
Merge "bootstat: Three more boot reasons."
...
am: 5470a12513
Change-Id: If4b3dd7542efd8e4c937ea18dbfa58f9988b17c2
2017-11-30 17:55:08 +00:00
James Hawkins
5470a12513
Merge "bootstat: Three more boot reasons."
2017-11-30 17:47:00 +00:00
Joel Galenson
80d2fdcac7
Merge "Run restorecon after init creates a symlink or writes to a file."
...
am: c02b92a923
Change-Id: I06d9c5cdefa732ae2094d389678980e597a89c4c
2017-11-30 17:34:25 +00:00
Treehugger Robot
c02b92a923
Merge "Run restorecon after init creates a symlink or writes to a file."
2017-11-30 17:30:17 +00:00
Dan Willemsen
528f144e77
Fix / suppress new unused warnings for mingw+clang
...
Bug: 69933068
Test: mmma system/core
Change-Id: I089166a979d3d8c5ada38a7745d507b555048499
2017-11-29 21:37:28 -08:00
Christopher Ferris
756d122b8f
Merge "Fix incorrect usage of relative pcs."
...
am: 96b5268405
Change-Id: I5ddf719aa80439cd56859bb52267ffa4bb9edac6
2017-11-30 03:22:05 +00:00
Christopher Ferris
96b5268405
Merge "Fix incorrect usage of relative pcs."
2017-11-30 03:11:41 +00:00
Christopher Ferris
c3d79f7c07
Fix incorrect usage of relative pcs.
...
When stepping, it's necessary to use both the unaltered relative pc
and the adjusted relative pc. If the adjusted pc is not used, the
wrong unwind information can be used.
Added new offline unit tests that take real data and verifies that it
unwinds properly.
Fix a bug in the map code that would not properly parse map data for
a 64 bit process when done in a 32 bit process.
Fix bug in eh_frame processing that didn't adjust the pc correctly.
Fix unit tests related to the pc adjustment.
Bug: 69475565
Test: Passes libbacktrace/libunwindstack unit tests.
Test: Run debuggerd -b on processes on a hikey.
Change-Id: Ic501a1c4549c5f61d2742a7105c42a960f2c892b
2017-11-29 16:10:08 -08:00
Joel Galenson
4b591f1851
Run restorecon after init creates a symlink or writes to a file.
...
Init currently sets the SELinux context on a mkdir but not on
other operations. This patch modifies it to do so when creating
symlinks, writing to a file, or copying a file.
Test: Built, flashed, and booted. Added fake init entries and
verified that they received the proper SELinux context.
Change-Id: I836b570fef81d74f3b6c8e7ce0274e94ca7b12d3
2017-11-29 15:29:49 -08:00
James Hawkins
5f85f8354b
bootstat: Three more boot reasons.
...
Bug: none
Test: none
Change-Id: I37b6ed6ce73f403aa5f9db2c0234e9dc4c0f7c01
2017-11-29 14:30:06 -08:00
James Hawkins
6c640a1617
Merge "bootstat: Add a few more bootreasons."
...
am: b623389421
Change-Id: I047d0fd7c22d3814d2d94ef267d4ad13e054541f
2017-11-29 19:38:12 +00:00
James Hawkins
b623389421
Merge "bootstat: Add a few more bootreasons."
2017-11-29 19:29:54 +00:00
Steven Moreland
6cf3cd2288
Merge "ld.config.txt.in typo: absolution -> absolute"
...
am: 34778d24ae
Change-Id: Ib541b7b0f3e5162845f49673e65cac5ab1fc909d
2017-11-29 17:57:34 +00:00
Treehugger Robot
34778d24ae
Merge "ld.config.txt.in typo: absolution -> absolute"
2017-11-29 17:49:33 +00:00
Elliott Hughes
0b8a47c55a
Merge "Remove a duplicate TEMP_FAILURE_RETRY."
...
am: 166c6a4390
Change-Id: I7bf8f8b7c68ecced7c62122f59623eefe9bab285
2017-11-29 16:12:00 +00:00
Elliott Hughes
166c6a4390
Merge "Remove a duplicate TEMP_FAILURE_RETRY."
2017-11-29 16:06:12 +00:00
Sebastian Pop
1f93d71022
use std::hash instead of hashing byte by byte
...
This patch uses libcxx's string_view hashing. The performance is better than the
current implementation, and almost the same as for the hashing implementation amended
by the patch in https://android-review.googlesource.com/404742
The following experiments were conducted on a HiKey aarch64 A53.
No changes:
$ adb push out/target/product/hikey/data/benchmarktest64/ziparchive-benchmarks /data
$ adb shell /data/ziparchive-benchmarks --benchmark_repetitions=5
-----------------------------------------------------------------
Benchmark Time CPU Iterations
-----------------------------------------------------------------
FindEntry_no_match 82279629 ns 81759676 ns 9
FindEntry_no_match 81648056 ns 81627431 ns 9
FindEntry_no_match 81384074 ns 81369057 ns 9
FindEntry_no_match 89618889 ns 82437755 ns 9
FindEntry_no_match 81811389 ns 81785261 ns 9
FindEntry_no_match_mean 83348407 ns 81795836 ns 9
FindEntry_no_match_stddev 3520421 ns 394962 ns 0
Iterate_all_files 137622000 ns 137589032 ns 5
Iterate_all_files 139666333 ns 138409469 ns 5
Iterate_all_files 150070000 ns 140883697 ns 5
Iterate_all_files 138600667 ns 138540646 ns 5
Iterate_all_files 137599833 ns 137567438 ns 5
Iterate_all_files_mean 140711767 ns 138598056 ns 5
Iterate_all_files_stddev 5299929 ns 1354928 ns 0
$ cd system/core/libziparchive
$ git fetch https://android.googlesource.com/platform/system/core refs/changes/42/404742/7 && git cherry-pick FETCH_HEAD
$ mma
$ cd -
$ adb push out/target/product/hikey/data/benchmarktest64/ziparchive-benchmarks /data
$ adb shell /data/ziparchive-benchmarks --benchmark_repetitions=5
-----------------------------------------------------------------
Benchmark Time CPU Iterations
-----------------------------------------------------------------
FindEntry_no_match 53302756 ns 53291178 ns 13
FindEntry_no_match 54314487 ns 54272272 ns 13
FindEntry_no_match 53866923 ns 53851178 ns 13
FindEntry_no_match 53324423 ns 53317296 ns 13
FindEntry_no_match 53289231 ns 53289159 ns 13
FindEntry_no_match_mean 53619564 ns 53604216 ns 13
FindEntry_no_match_stddev 458449 ns 443527 ns 0
Iterate_all_files 128211111 ns 112254783 ns 6
Iterate_all_files 110695000 ns 110677726 ns 6
Iterate_all_files 109351250 ns 109350998 ns 6
Iterate_all_files 109367500 ns 109367796 ns 6
Iterate_all_files 110872222 ns 110591407 ns 6
Iterate_all_files_mean 113699417 ns 110448542 ns 6
Iterate_all_files_stddev 8143723 ns 1194577 ns 0
$ cd system/core/libziparchive
$ git checkout HEAD~
$ git am 0001-use-std-hash.patch
$ mma
$ cd -
$ adb push out/target/product/hikey/data/benchmarktest64/ziparchive-benchmarks /data
$ adb shell /data/ziparchive-benchmarks --benchmark_repetitions=5
-----------------------------------------------------------------
Benchmark Time CPU Iterations
-----------------------------------------------------------------
FindEntry_no_match 55339872 ns 55195112 ns 13
FindEntry_no_match 56232628 ns 56069924 ns 13
FindEntry_no_match 55694103 ns 55255946 ns 13
FindEntry_no_match 55275064 ns 55120136 ns 13
FindEntry_no_match 54971987 ns 54944411 ns 13
FindEntry_no_match_mean 55502731 ns 55317106 ns 13
FindEntry_no_match_stddev 482032 ns 436766 ns 0
Iterate_all_files 114618611 ns 114487804 ns 6
Iterate_all_files 112552917 ns 112229801 ns 6
Iterate_all_files 111288750 ns 111255044 ns 6
Iterate_all_files 111291528 ns 111259045 ns 6
Iterate_all_files 114347222 ns 113677119 ns 6
Iterate_all_files_mean 112819806 ns 112581763 ns 6
Iterate_all_files_stddev 1606214 ns 1454858 ns 0
Change-Id: I1e3413d331bcb460ca38bc2c87e23f89b456cd2f
2017-11-29 09:44:28 -06:00
Bowgo Tsai
069ab5bd1a
init/selinux: renames nonplat_declaration.cil to plat_pub_versioned.cil
...
The content of nonplat_declaration.cil in /vendor is a versioned public
sepolicy exported from ${AOSP}/system/sepolicy/public. Renames it to
better reflect the fact.
Bug: 64240127
Test: boot sailfish normally without odm
Test: boot another device having odm
Change-Id: I654f5bbde2f2d666a2a5c7ed8561ccd93c983a6e
2017-11-29 18:13:10 +08:00
Christopher Ferris
19b90d2092
Merge "Allow multiple threads sharing a map to unwind."
...
am: f819c1d94b
Change-Id: I708bd4218372b6d008f40df6fada92b601586a01
2017-11-29 03:07:08 +00:00
Christopher Ferris
f819c1d94b
Merge "Allow multiple threads sharing a map to unwind."
2017-11-29 02:58:06 +00:00
Elliott Hughes
3df2fa6d8e
Remove a duplicate TEMP_FAILURE_RETRY.
...
Bug: N/A
Test: builds
Change-Id: I19c2f50422e8a7e0c451a464586553f3e5eaadab
2017-11-28 18:05:27 -08:00
James Hawkins
74b1758cad
bootstat: Add a few more bootreasons.
...
Bug: none
Test: none
Change-Id: I9b482e642a9eec26670118a265046194f3cc2a7a
2017-11-28 15:20:44 -08:00
Christopher Ferris
be788d891d
Allow multiple threads sharing a map to unwind.
...
Add a mutex in MapInfo, and a mutex in Elf. Lock the creation of an Elf
file using the MapInfo mutex, and lock when calling Step, GetFunctionName,
or GetSoname since they can modify information in the object. It might
be beneficial to use a fine grained lock in the future.
Change the Maps object to contain a vector of MapInfo pointers rather
than the total objects. This avoids copying this data around.
Add a test to libbacktrace to verify that sharing a map while doing
unwinds in different threads works.
Add concurrency tests in libunwindstack to verify the locking works.
Add always inline to the RegsGetLocal arm and aarch64 functions. I had
a case where clang did not inline the code, so make sure this is specified.
Bug: 68813077
Test: New unit tests to cover the case. Passes all unit tests.
Test: Ran a monkey test while dumping bugreports and verified that
Test: no crashes in libunwind.
Test: Remove the locking and verified that all of the concurrenty tests fail.
Change-Id: I769e728c676f6bdae9e64ce4cdc03b6749beae03
2017-11-28 15:20:38 -08:00
Christopher Ferris
3bd2524d70
Merge "Add way to specify an offset in an elf file."
...
am: 2f1aa4e90f
Change-Id: I05ffa0f44bbf1e9e6807389ea6ad5c9e06489e35
2017-11-28 23:13:52 +00:00
Christopher Ferris
2f1aa4e90f
Merge "Add way to specify an offset in an elf file."
2017-11-28 23:09:48 +00:00
Steven Moreland
ab338c10e6
ld.config.txt.in typo: absolution -> absolute
...
Test: none
Change-Id: I247722c0881fa733226eec6578f17b1a481d1e91
2017-11-28 12:42:19 -08:00
Yan, Shaopu
a3e4876715
Merge "add null pointer check for msg buffer"
...
am: f03f2a5cd7
Change-Id: I988bd6cf38aae918dd6b8c547b6db92501925685
2017-11-28 19:58:40 +00:00
Treehugger Robot
f03f2a5cd7
Merge "add null pointer check for msg buffer"
2017-11-28 19:54:27 +00:00
Christopher Ferris
a141709b21
Add way to specify an offset in an elf file.
...
This is to support the ability to dump an elf embedded in an apk.
Test: Ran unwind_info on a file, then ran it on an apk with an offset.
Change-Id: I8f23f4bdaadfd3665900bdd45d50cb270e2e0eed
2017-11-28 10:59:33 -08:00