OSDN Git Service
Yabin Cui [Fri, 2 Sep 2016 17:18:15 +0000 (17:18 +0000)]
Merge "simpleperf: handle monitored processes correctly when a cpu is up."
Treehugger Robot [Thu, 1 Sep 2016 22:47:01 +0000 (22:47 +0000)]
Merge changes Ic9258141,If4b32546
* changes:
fec: remove unneeded target executable
fec: remove unused mmap code
Sami Tolvanen [Thu, 1 Sep 2016 20:43:51 +0000 (13:43 -0700)]
fec: remove unneeded target executable
Change-Id: Ic925814191b8ac952b584a994cf455f871a8ee0c
Sami Tolvanen [Thu, 1 Sep 2016 20:35:17 +0000 (13:35 -0700)]
fec: remove unused mmap code
Change-Id: If4b32546c6678afaaebffbcf1fbeee17a1879561
Yabin Cui [Wed, 31 Aug 2016 19:14:52 +0000 (19:14 +0000)]
Merge "simpleperf: add python report interface on linux."
Yabin Cui [Wed, 31 Aug 2016 01:23:33 +0000 (01:23 +0000)]
Merge "simpleperf: fix two errors."
Yabin Cui [Fri, 26 Aug 2016 18:35:28 +0000 (11:35 -0700)]
simpleperf: add python report interface on linux.
1. Build libsimpleperf_report.so on host, which exports functions
to access samples.
2. Add simpleperf_report_lib.py to wrap libsimpleperf_report.so.
3. Write report_sample.py to test simpleperf_report_lib.py. The
output format of report_sample.py matches the need of building
FlameGraph.
Bug: http://b/
31069528
Test: run report_sample.py on perf.data.
Test: run simpleperf_unit_test.
Change-Id: I4949f8ea506f12101a9c4fb4c896957c96676853
Daniel Rosenberg [Tue, 30 Aug 2016 20:41:41 +0000 (20:41 +0000)]
Merge "Test: Basic bootloader tests via fastboot"
am:
cbbc907a4d
Change-Id: I644f3d99f55fe84da2d517c3e5e6bae439a35a12
Daniel Rosenberg [Tue, 30 Aug 2016 20:35:22 +0000 (20:35 +0000)]
Merge "Test: Basic bootloader tests via fastboot"
Yabin Cui [Tue, 30 Aug 2016 20:13:17 +0000 (13:13 -0700)]
simpleperf: fix two errors.
Fix two errors when reporting perf.data generated by linux perf.
And add corresponding tests.
Test: run simpleperf_unit_test.
Change-Id: I04dd88461fdd6a85763847570bac16db1ccb81fa
Mitchell Wills [Mon, 29 Aug 2016 20:02:48 +0000 (20:02 +0000)]
Merge "Remove ancient wifi stress test" into stage-aosp-master
Yabin Cui [Mon, 29 Aug 2016 19:33:17 +0000 (12:33 -0700)]
simpleperf: handle monitored processes correctly when a cpu is up.
For stat/record cmd, the way to handle -p option is to change the
process list into a thread list before profiling. However, it doesn't
work well if we want to open new event files when a cpu is up. The
situation in problem is as below:
1. Monitor for process A, which currently has thread a.
2. Then we open event files for thread a.
3. Process A creates thread b. If profiling child threads/processes
is enabled, the kernel will monitor thread b automatically.
4. A new cpu is up, and we need to open new event files on that
cpu. But we will only open event file for thread a, although the
user command is to monitor the whole process.
To fix this, remember which processes are monitored in
EventSelectionSet, and search threads in the monitored processes
each time to open new event files.
Bug: http://b/
29245608
Test: run simpleperf record cmd and make cpu offline and online.
Test: run simpleperf_unit_test.
Change-Id: Iabf9e30be9f0bc5a3651227e4695034c0b9e0258
Yabin Cui [Sat, 27 Aug 2016 19:04:05 +0000 (19:04 +0000)]
Merge "simpleperf: support hotplug events in record cmd."
am:
728c8de11d
Change-Id: Id5719e1c027d0c9fb09b789d5aab48167fb1bf3a
Treehugger Robot [Sat, 27 Aug 2016 18:59:00 +0000 (18:59 +0000)]
Merge "simpleperf: support hotplug events in record cmd."
Yabin Cui [Sat, 27 Aug 2016 01:25:21 +0000 (18:25 -0700)]
simpleperf: support hotplug events in record cmd.
1. When a cpu is down, read records from event files on that cpu,
then close those event files.
2. When a cpu is up, open event files on that cpu, and create
mapped buffer for those event files to dump records.
3. Instead of creating a mapped buffer for each event type on each
cpu, we can just create a mapped buffer for all event types on
each cpu.
4. When new event files are created, store a EventIdRecord record in
perf.data to notify record_file_reader.cpp.
Bug: http://b/
29245608
Test: run simpleperf record cmd and make cpu offline and online.
Test: run simpleperf_unit_test.
Change-Id: Ib97a24b6292fa143e9b35cb105bdddf1e826d60a
Christopher Wiley [Wed, 15 Jun 2016 20:37:58 +0000 (13:37 -0700)]
Remove ancient wifi stress test
Bug:
29321445
Change-Id: Ib6797def04d69f20ea4e856d4005c57b5ec6ac42
(cherry picked from commit
3defd8f2199234c5a7a6092fba320f143caf3622)
Colin Cross [Fri, 26 Aug 2016 20:25:37 +0000 (20:25 +0000)]
Merge "Replace libziparchive-host with libziparchive"
am:
b5a1a4a772
Change-Id: Ic4b372e601b2e66aef25c3c2b536fce86547657c
Colin Cross [Fri, 26 Aug 2016 20:18:54 +0000 (20:18 +0000)]
Merge "Replace libziparchive-host with libziparchive"
Colin Cross [Fri, 26 Aug 2016 18:16:28 +0000 (11:16 -0700)]
Replace libziparchive-host with libziparchive
libziparchive-host is no longer necessary, and mixing libziparchive-host
and libziparchive can cause ODR violations.
Change-Id: I018d3726e6ab099a86a3ea662ab6d52509218510
Yabin Cui [Fri, 26 Aug 2016 17:16:10 +0000 (17:16 +0000)]
Merge "simpleperf: support hotplug events in stat cmd."
am:
c3ead4eb80
Change-Id: Ibb93a0572bdd79c75e4e40a35f8699f1f69498ca
Treehugger Robot [Fri, 26 Aug 2016 17:07:21 +0000 (17:07 +0000)]
Merge "simpleperf: support hotplug events in stat cmd."
Yabin Cui [Thu, 25 Aug 2016 02:32:55 +0000 (19:32 -0700)]
simpleperf: support hotplug events in stat cmd.
1. When a cpu is down, read counters from event files on that cpu,
then close those events files.
2. When a cpu is up, open event files on that cpu.
3. Remove check of time_running != 0 in cmd_stat.cpp, because
1) We no longer need the check as we no longer open event file
for each cpu for non system wide profiling.
2) The kernel has a bug that can make time_running == 0 if
a cpu is down while profiling. But the counter value is
still valid, and shouldn't be ignored.
Bug: http://b/
29245608
Test: run simpleperf and make cpu offline and online.
Change-Id: I3e7bec139c5f50bea1311c95bb154a5b290a72ea
Yabin Cui [Thu, 25 Aug 2016 19:10:30 +0000 (19:10 +0000)]
Merge "simpleperf: print file path used for reading symbols."
am:
4a35dafc21
Change-Id: I5a2751fbb762f98f9ef1050372a2c5e506e2c76d
Treehugger Robot [Thu, 25 Aug 2016 19:00:47 +0000 (19:00 +0000)]
Merge "simpleperf: print file path used for reading symbols."
Yabin Cui [Thu, 25 Aug 2016 17:46:40 +0000 (10:46 -0700)]
simpleperf: print file path used for reading symbols.
It helps users to find out which files are used for
reporting.
Bug: http://b/
29574526
Change-Id: I3d608e61c50471632c50bf6e8f6f9e45c63fc4b4
Test: run `simpleperf report --log verbose` manually.
Alex Deymo [Thu, 25 Aug 2016 01:33:24 +0000 (01:33 +0000)]
Merge "Don't include multinetwork tools in Brillo."
am:
db7a1c571a
Change-Id: I27b4a11bcdf4c578f908ffa4ca7c5a9d2599b547
Alex Deymo [Thu, 25 Aug 2016 01:28:42 +0000 (01:28 +0000)]
Merge "Don't include multinetwork tools in Brillo."
Yabin Cui [Wed, 24 Aug 2016 23:46:35 +0000 (23:46 +0000)]
Merge "simpleperf: improve cpu_hotplug_test."
am:
a903cc9b9c
Change-Id: I53f788aa6100b0eb6917920334efa624af14e77f
Alex Deymo [Wed, 24 Aug 2016 23:42:11 +0000 (16:42 -0700)]
Don't include multinetwork tools in Brillo.
These tools depend on libandroid, which is not present in Brillo.
Bug:
31068444
Change-Id: I0565775ab3effa910149f28bef790b6fed4e6485
Test: `make dist`
Treehugger Robot [Wed, 24 Aug 2016 23:36:28 +0000 (23:36 +0000)]
Merge "simpleperf: improve cpu_hotplug_test."
Yabin Cui [Thu, 18 Aug 2016 00:34:26 +0000 (17:34 -0700)]
simpleperf: improve cpu_hotplug_test.
1. Add offline_while_user_process_profiling test for
http://b/
28086229.
2. Add options to adjust test duration and cpu hotplug
interval.
3. Report test time periodically for tests running for
a long time.
Bug: http://b/
25193162
Bug: http://b/
28086229
Bug: http://b/
30839193
Change-Id: If02a45aed2dab718ca381b24da2898f22fed1a8d
Bill Yi [Wed, 24 Aug 2016 20:16:27 +0000 (20:16 +0000)]
Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD
am:
4d269c7593
Change-Id: I7a58fdbab63c1c4cd11973d49278571db0c50fde
Yabin Cui [Wed, 24 Aug 2016 20:16:24 +0000 (20:16 +0000)]
Merge "simpleperf: notify user for unsupported modifiers."
am:
43908a31c1
Change-Id: I4f53fa84ea663a4090a99f2261f153faf8f0b8fb
Bill Yi [Wed, 24 Aug 2016 19:08:29 +0000 (12:08 -0700)]
Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD
Yabin Cui [Wed, 24 Aug 2016 18:54:10 +0000 (18:54 +0000)]
Merge "simpleperf: notify user for unsupported modifiers."
Yabin Cui [Wed, 24 Aug 2016 16:55:23 +0000 (16:55 +0000)]
Merge "simpleperf: monitor cpu hotplug in stat cmd."
am:
ef99a90b46
Change-Id: I7c89d8155b9ade3c288d92d496ec9fc84be648b6
Yabin Cui [Fri, 19 Aug 2016 22:42:39 +0000 (15:42 -0700)]
simpleperf: notify user for unsupported modifiers.
If there is no need to record samples, u/k modifiers
used in event cpu-clock and task-clock are ignored
by the kernel.
Bug: http://b/
29574526
Change-Id: Id45568448888965a3bfa382c4420e395a741f77a
Test: simpleperf_unit_test.
Treehugger Robot [Wed, 24 Aug 2016 16:38:03 +0000 (16:38 +0000)]
Merge "simpleperf: monitor cpu hotplug in stat cmd."
Elliott Hughes [Wed, 24 Aug 2016 03:13:54 +0000 (03:13 +0000)]
Merge "Don't invent our own pagemap constants."
am:
5079d0aabc
Change-Id: Ica4813dcf76197b8866307c7c0ba5fc4a56fd6e3
Treehugger Robot [Wed, 24 Aug 2016 03:05:17 +0000 (03:05 +0000)]
Merge "Don't invent our own pagemap constants."
Elliott Hughes [Wed, 24 Aug 2016 00:47:49 +0000 (17:47 -0700)]
Don't invent our own pagemap constants.
Use the uapi ones instead, so I don't have to think about whether ours
are correct.
Bug: http://b/
31044648
Change-Id: Ibe4a078ad3223419301a5f585e8ed24dd7366ce2
Yabin Cui [Tue, 23 Aug 2016 22:26:57 +0000 (22:26 +0000)]
Merge "simpleperf: omit samples get while dumping thread map information."
am:
84ea73e65c
Change-Id: I7f7aa533eb8f4d0d224981f2b2865ee45e0d718f
Treehugger Robot [Tue, 23 Aug 2016 22:17:15 +0000 (22:17 +0000)]
Merge "simpleperf: omit samples get while dumping thread map information."
Yabin Cui [Tue, 23 Aug 2016 20:18:47 +0000 (13:18 -0700)]
simpleperf: omit samples get while dumping thread map information.
Bug: http://b/
31039737
Change-Id: Ia65c61b874a2f60d7022be3ef0774f5fc6b09d7c
Test: test manually as described in the bug.
Yabin Cui [Mon, 22 Aug 2016 23:06:27 +0000 (23:06 +0000)]
Merge "simpleperf: avoid selinux denials."
am:
23a73bf538
Change-Id: Ia5b6064a5f3936f739480221a9603b66b744ed6f
Treehugger Robot [Mon, 22 Aug 2016 22:55:25 +0000 (22:55 +0000)]
Merge "simpleperf: avoid selinux denials."
Yabin Cui [Mon, 22 Aug 2016 20:39:19 +0000 (13:39 -0700)]
simpleperf: avoid selinux denials.
1. Don't stat() entries in /proc directory if not necessary.
2. Don't read tracing events in debugfs if not root.
Bug: http://b/
30981595
Change-Id: Ic695671357dad936d60f4e6d573ce4452dec217c
Test: run `simpleperf list` and check kmsg.
Yabin Cui [Sat, 20 Aug 2016 00:24:37 +0000 (17:24 -0700)]
simpleperf: monitor cpu hotplug in stat cmd.
Move code used to monitor cpu hotplug events
from cmd_record.cpp to event_selection_set.cpp,
so it can also be used by stat cmd.
Bug: http://b/
29245608
Change-Id: I1f5f3268192aa5c98c0be9fc1de763352c08eab6
Test: run simpleperf stat, and online/offline a cpu.
Colin Cross [Wed, 17 Aug 2016 18:18:49 +0000 (18:18 +0000)]
Merge "Build icache for arm on arm64"
am:
cb0112fe64
Change-Id: I5554ac7aaf799dda68731802bd8668b3db5bbfb5
Chih-hung Hsieh [Wed, 17 Aug 2016 17:47:58 +0000 (17:47 +0000)]
Merge "Fix google-explicit-constructor warnings in ext4_utils."
am:
e2d0366442 -s ours
Change-Id: Ic9f51fa2ad2f69004afc51fb31a75aa910697b0c
Colin Cross [Wed, 17 Aug 2016 00:08:03 +0000 (00:08 +0000)]
Merge "Build icache for arm on arm64"
Colin Cross [Tue, 16 Aug 2016 22:23:45 +0000 (15:23 -0700)]
Build icache for arm on arm64
Change-Id: Iac9511f7d943fde9e00d21d46ca32f186d4d5673
Chih-hung Hsieh [Tue, 16 Aug 2016 16:50:45 +0000 (16:50 +0000)]
Merge "Fix google-explicit-constructor warnings in ext4_utils."
Yabin Cui [Mon, 15 Aug 2016 23:52:02 +0000 (23:52 +0000)]
Merge "simpleperf: add simpleperf_report.py to sdk artifacts."
am:
64d7033269
Change-Id: I81c8b93e7ded46ba397eee79ea12b50ca051b1e6
Yabin Cui [Mon, 15 Aug 2016 23:42:30 +0000 (23:42 +0000)]
Merge "simpleperf: add simpleperf_report.py to sdk artifacts."
Daniel Rosenberg [Thu, 11 Aug 2016 21:47:07 +0000 (14:47 -0700)]
Test: Basic bootloader tests via fastboot
Test for required variable support, and
verify some A/B functionality if present.
Change-Id: Ic4728656d7aee3ea17764ef43bc6f208c7e165b9
Yabin Cui [Fri, 12 Aug 2016 22:19:40 +0000 (15:19 -0700)]
simpleperf: add simpleperf_report.py to sdk artifacts.
Bug: http://b/
28911532
Change-Id: I27ddc735c5629c65e7ef9f1218551ed048b39a08
Test: None.
Dan Albert [Fri, 12 Aug 2016 09:18:30 +0000 (09:18 +0000)]
Merge "Stop hard coding gtest/gmock things."
am:
9aef6c7d29
Change-Id: Ied120d80f30e9b81314ad13f6b32450f54f298fa
Treehugger Robot [Fri, 12 Aug 2016 09:15:46 +0000 (09:15 +0000)]
Merge "Stop hard coding gtest/gmock things."
Nick Desaulniers [Fri, 12 Aug 2016 04:34:13 +0000 (04:34 +0000)]
Merge "procrank: fix bounds check to prevent heap overflow"
am:
79dcfb73a2
Change-Id: Ied99331e9d88c1c5bcffc050164f7727ae46ae0e
Treehugger Robot [Fri, 12 Aug 2016 04:27:37 +0000 (04:27 +0000)]
Merge "procrank: fix bounds check to prevent heap overflow"
Chih-Hung Hsieh [Thu, 11 Aug 2016 23:48:02 +0000 (23:48 +0000)]
Merge "Fix google-explicit-constructor warnings in simpleperf."
am:
eddb94dc8b
Change-Id: I55d778ab19963fa33e4ff37ce24ed3dafe19a9cd
Treehugger Robot [Thu, 11 Aug 2016 23:33:53 +0000 (23:33 +0000)]
Merge "Fix google-explicit-constructor warnings in simpleperf."
Nick Desaulniers [Wed, 10 Aug 2016 22:44:19 +0000 (15:44 -0700)]
procrank: fix bounds check to prevent heap overflow
Bug:
30774296
Change-Id: I44005caaa3cc17fe829f375a4cfeb5a464c97fbe
(cherry picked from commit
98a20cd1283b6ee029e871c0876815300475c40a)
Dan Albert [Thu, 11 Aug 2016 19:45:53 +0000 (12:45 -0700)]
Stop hard coding gtest/gmock things.
The headers are exported, and the build system automatically adds
libgtest for test modules.
Test: mma
Bug: None
Change-Id: I99373732aa71244c6dc8bfa21c5d06190ce76ada
Chih-Hung Hsieh [Thu, 11 Aug 2016 18:06:00 +0000 (11:06 -0700)]
Fix google-explicit-constructor warnings in simpleperf.
Bug:
28341362
Change-Id: I35f2be2563cd1dcd5bdac25e8e801c08eb665db5
Test: build with WITH_TIDY=1
David Zeuthen [Thu, 11 Aug 2016 14:45:50 +0000 (14:45 +0000)]
Merge "avb: Add common verified boot tools and library."
am:
17361eb23c
Change-Id: I2547f28561c7652ab25c17536f2dc522a6574bc5
David Zeuthen [Thu, 11 Aug 2016 14:40:41 +0000 (14:40 +0000)]
Merge "avb: Add common verified boot tools and library."
Josh Gao [Thu, 11 Aug 2016 01:30:57 +0000 (18:30 -0700)]
Merge commit '
3609371c949ec3c31fc88bb6a2231774fdeb25c1' into manual_merge_3609371
Change-Id: I6b9c6b1d0281bfefcb8f664cfb0e535ae4c83647
Treehugger Robot [Thu, 11 Aug 2016 01:19:23 +0000 (01:19 +0000)]
Merge "alloc-stress: use nullptr for execl sentinel."
Josh Gao [Wed, 10 Aug 2016 23:59:40 +0000 (16:59 -0700)]
alloc-stress: use nullptr for execl sentinel.
Passing 0 as a sentinel for execl is incorrect, use nullptr instead.
Bug: http://b/
30793878
Change-Id: Ib05c9b509823442ef7c2174a2086b97c32df387b
Yabin Cui [Wed, 10 Aug 2016 00:32:59 +0000 (00:32 +0000)]
Merge "simpleperf: fix --pids option."
am:
be52e2bb05
Change-Id: I0538f441405b4cb47579eec93177d993781577f1
Treehugger Robot [Wed, 10 Aug 2016 00:26:42 +0000 (00:26 +0000)]
Merge "simpleperf: fix --pids option."
Yabin Cui [Tue, 9 Aug 2016 22:33:34 +0000 (22:33 +0000)]
Merge "simpleperf: monitor and report cpu hotplug events."
am:
f58a9a0db3
Change-Id: Ia4307a3f16bc38e422c2148d4ee798cf38a393d6
Treehugger Robot [Tue, 9 Aug 2016 22:24:14 +0000 (22:24 +0000)]
Merge "simpleperf: monitor and report cpu hotplug events."
Yabin Cui [Mon, 8 Aug 2016 21:42:25 +0000 (14:42 -0700)]
simpleperf: fix --pids option.
--pids option was recognized as --tids because of logic
error. this patch fixes that and adds corresponding test.
Bug: http://b/
30736228
Change-Id: I0515fc7e03f29f821f7b0aa32c608cf250e87662
Test: run simpleperf_unit_test.
Yabin Cui [Mon, 8 Aug 2016 22:48:31 +0000 (22:48 +0000)]
Merge "simpleperf: fix test record_cmd.duration_option."
am:
8cd939bd7a
Change-Id: If85f536e10b5533365333a0e7b6e9bf22b83c822
Treehugger Robot [Mon, 8 Aug 2016 22:44:23 +0000 (22:44 +0000)]
Merge "simpleperf: fix test record_cmd.duration_option."
Yabin Cui [Mon, 8 Aug 2016 21:51:48 +0000 (14:51 -0700)]
simpleperf: fix test record_cmd.duration_option.
The test should write perf.data to a temporary file, because
the test may not have permission to write perf.data in
current directory.
Bug: http://b/
30405638
Change-Id: Iff4ac7ea014f29e58146ad79c8dc3b0abcdb8d41
Test: run simpleperf_unit_test.
Josh Gao [Mon, 8 Aug 2016 18:33:53 +0000 (18:33 +0000)]
Merge "Fix references to libcrypto_utils_static."
am:
879a2c8fa0
Change-Id: I0a3d2c1f73a93ad3a34e4d4588ad95f3be33f7a8
Josh Gao [Mon, 8 Aug 2016 18:29:10 +0000 (18:29 +0000)]
Merge "Fix references to libcrypto_utils_static."
Chih-Hung Hsieh [Mon, 8 Aug 2016 16:52:24 +0000 (16:52 +0000)]
Merge "Fix google-explicit-constructor warnings in perfprofd."
am:
f5f54b5160
Change-Id: If2eb28db00b71a8b6dfdecdc3e3bdf5abcacdb80
Chih-hung Hsieh [Mon, 8 Aug 2016 16:40:07 +0000 (16:40 +0000)]
Merge "Fix google-explicit-constructor warnings in perfprofd."
Josh Gao [Fri, 5 Aug 2016 23:03:01 +0000 (16:03 -0700)]
Fix references to libcrypto_utils_static.
Bug: http://b/
30708454
Change-Id: I471ed5e3be92d60a88bf75ed5e427f7e34eefbc3
Yabin Cui [Fri, 5 Aug 2016 23:48:20 +0000 (23:48 +0000)]
Merge "simpleperf: fix record file writer."
am:
4c54842292
Change-Id: Id7e992b40120f0ca2f9763b38ca0a18fbb6786a2
Treehugger Robot [Fri, 5 Aug 2016 23:43:31 +0000 (23:43 +0000)]
Merge "simpleperf: fix record file writer."
Yabin Cui [Fri, 5 Aug 2016 23:25:30 +0000 (23:25 +0000)]
Merge "simpleperf: allow --duration option when executing child command."
am:
4b97e8e71f
Change-Id: I98f11a1fa3bab4c1754e76fc0d82b39a5225205b
Yabin Cui [Fri, 5 Aug 2016 22:31:33 +0000 (15:31 -0700)]
simpleperf: fix record file writer.
When running `run-as [package_name] ./simpleperf record...` on device,
simpleperf doesn't have permission to create temporary file in
/data/local/tmp. So create temporary files in the same directory
as perf.data instead.
Bug: http://b/
30649868
Change-Id: I48178d4eb421be8d8636721ac3b29b98fa673b5d
Test: run simpleperf_unit_test.
Treehugger Robot [Fri, 5 Aug 2016 22:48:05 +0000 (22:48 +0000)]
Merge "simpleperf: allow --duration option when executing child command."
David Zeuthen [Wed, 27 Jul 2016 21:58:40 +0000 (17:58 -0400)]
avb: Add common verified boot tools and library.
This code is originally from the Brillo project but has been adapted for
use in all of Android. It consists of a tool - avbtool - for working
with images (e.g. boot.img, system.img). See the README file for how
it's integrated into the Android build system and how to enable it.
The main job of avbtool is to create vbmeta.img which is the
top-level object for verified boot. This image is designed to go into
the vbmeta partition (or, if using A/B, the slot in question
e.g. vbmeta_a or vbmeta_b) and be of minimal size (for out-of-band
updates). The vbmeta image is cryptographically signed and contains
verification data (e.g. cryptographic digests) for verifying boot.img,
system.img, and other partitions/images.
The vbmeta image can also contain references to other partitions where
verification data is stored as well as a public key indicating who
should sign the verification data. This indirection provides
delegation, that is, it allows a 3rd party to control content on a given
partition by including the public key said 3rd party is using to sign
the data with, in vbmeta.img. By design, this authority can be easily
revoked by simply updating vbmeta.img with new descriptors for the
partition in question.
Storing signed verification data on other images - for example
boot.img and system.img - is also done with avbtool.
In addition to avbtool, a library - libavb - is provided. This library
performs all verification on the device side e.g. it starts by loading
the vbmeta partition, checks the signature, and then goes on to load
the boot partition for verification.
The libavb library is intended to be used in both boot loaders and
inside Android. It has a simple abstraction for system dependencies
(see libavb/avb_sysdeps.h) as well as operations that the boot loader
or OS is expected to implement (see libavb/avb_ops.h).
In addition to handling verified boot, libavb will in the future be
extended to handle A/B selection in a way that can be used in the
device's fastboot implementation, its boot loader, and its
boot_control HAL implementation. This will be implemented in a future
CL.
BUG=
29414516
TEST=Unit tests for avbtool and libavb + unit tests pass.
Change-Id: I69ee86878e21fa718faccfc56eb0b1f40707d847
Yabin Cui [Fri, 5 Aug 2016 21:50:37 +0000 (14:50 -0700)]
simpleperf: allow --duration option when executing child command.
Previously --duration option can't be used while executing child
command, mainly because we use `sleep XX` child command to implement
--duration option. By using libevent, the limit doesn't exist.
Bug: http://b/
30405638
Change-Id: Iea1953ecf3aca48e75fb74f048ed04ad5b168630
Test: run simpleperf_unit_test.
Yabin Cui [Fri, 5 Aug 2016 20:41:14 +0000 (13:41 -0700)]
simpleperf: monitor and report cpu hotplug events.
This patch is to measure whether we need to handle cpu hotplug events.
Bug: http://b/
29245608
Test: run simpleperf_unit_test.
Change-Id: I031c6ddc99aeae66be10b4c586541accd622ceda
Yabin Cui [Fri, 5 Aug 2016 21:38:26 +0000 (21:38 +0000)]
Merge "simpleperf: remove cpu option tests."
am:
9ec492a979
Change-Id: I9ed4fc32a7ba7030c48d4d5b7d7a905caed01e6d
Yabin Cui [Fri, 5 Aug 2016 21:38:25 +0000 (21:38 +0000)]
Merge "simpleperf: reduce Record construction overhead while recording."
am:
4640256028
Change-Id: I55f89fb43605143e8c2f2d1931a40b4a495d1ad6
Treehugger Robot [Fri, 5 Aug 2016 21:35:49 +0000 (21:35 +0000)]
Merge "simpleperf: remove cpu option tests."
Treehugger Robot [Fri, 5 Aug 2016 21:31:29 +0000 (21:31 +0000)]
Merge "simpleperf: reduce Record construction overhead while recording."
Yabin Cui [Fri, 5 Aug 2016 19:11:26 +0000 (12:11 -0700)]
simpleperf: remove cpu option tests.
The cpu option tests are flaky because Cpu 0 can be offlined.
Bug: http://b/
30389972
Change-Id: Ie9f57dcde957be245167c957eb029ab37496471e
Test: run simpleperf cts test.
Yabin Cui [Fri, 5 Aug 2016 20:37:44 +0000 (20:37 +0000)]
Merge "simpleperf: fix arm unwinding."
am:
96bf860b97
Change-Id: Ia652107bc88d04012d3d16bc146ff98bc3bc15cf
Yabin Cui [Fri, 5 Aug 2016 20:32:34 +0000 (20:32 +0000)]
Merge "simpleperf: fix arm unwinding."
Yabin Cui [Fri, 5 Aug 2016 18:27:42 +0000 (11:27 -0700)]
simpleperf: fix arm unwinding.
Change-Id: Ie611504a7e5062c25466b59ebdcf8c33b51bf90c
Test: run simpleperf_unit_test.