OSDN Git Service

android-x86/system-extras.git
5 years agoMerge "Mark libverity_tree as recovery_available for update_engine_sideload"
Dan Willemsen [Fri, 2 Nov 2018 00:51:49 +0000 (00:51 +0000)]
Merge "Mark libverity_tree as recovery_available for update_engine_sideload"

5 years agoMerge "simpleperf: fix simpleperf_unit_test on windows."
Yabin Cui [Wed, 31 Oct 2018 18:42:33 +0000 (18:42 +0000)]
Merge "simpleperf: fix simpleperf_unit_test on windows."

5 years agosimpleperf: fix simpleperf_unit_test on windows.
Yabin Cui [Mon, 29 Oct 2018 21:23:48 +0000 (14:23 -0700)]
simpleperf: fix simpleperf_unit_test on windows.

Fix test failures caused by path separator and newline character.

Bug: 117568547
Test: run simpleperf_unit_test on windows.
Change-Id: I0522268368a2288893ecd52f505382c512d1d7c9

5 years agoMerge "partition_tools: Update for multiple block device support."
David Anderson [Mon, 29 Oct 2018 20:57:06 +0000 (20:57 +0000)]
Merge "partition_tools: Update for multiple block device support."

5 years agoMerge changes from topic "e4crypt_to_fscrypt"
Eric Biggers [Mon, 29 Oct 2018 17:19:39 +0000 (17:19 +0000)]
Merge changes from topic "e4crypt_to_fscrypt"

* changes:
  libfscrypt: get the fscrypt kernel API declarations from linux/fs.h
  Refactor "ext4 encryption" code into libfscrypt

5 years agopartition_tools: Update for multiple block device support.
David Anderson [Wed, 24 Oct 2018 00:52:57 +0000 (17:52 -0700)]
partition_tools: Update for multiple block device support.

lpmake: Support multiple block devices in super. This adds a --device
command that can be used to span super across multiple block devices.
Example:

    lpmake --device "system_a:10240000:0:0"
           --device "vendor_a:5120000:0:0"
           --device "product_a:2560000:0:0"
           ...

lpdump: Display the block device for each extent.

Bug: 116802789
Test: manual test of lpmake
Test: lpdump /dev/block/by-name/super
Change-Id: I2e0ec54daf3b4fde04115ea646a7622426f67496

5 years agolibfscrypt: get the fscrypt kernel API declarations from linux/fs.h
Eric Biggers [Tue, 23 Oct 2018 20:39:07 +0000 (13:39 -0700)]
libfscrypt: get the fscrypt kernel API declarations from linux/fs.h

bionic now has linux/fs.h from the 4.14 kernel, which has the fscrypt
kernel API declarations.  Replace the manual declarations in libfscrypt,
except for the mode numbers which are not supported by the upstream
kernel.

Test: built, booted device with f2fs encryption
Change-Id: I6c663813828e3e0639d9be4298bff2bd4ec36c66

5 years agoRefactor "ext4 encryption" code into libfscrypt
Eric Biggers [Tue, 23 Oct 2018 20:39:07 +0000 (13:39 -0700)]
Refactor "ext4 encryption" code into libfscrypt

File-based encryption related code no longer belongs in ext4_utils, as
it is now used on both ext4 and f2fs, since both filesystems share the
same kernel API for encryption.  Refactor it into its own library,
libfscrypt.

Note that the keyring is renamed from "e4crypt" to "fscrypt", which is
technically a user-visible change, but as far as I know nothing depends
on it other than vold which is being updated too.

Test: built, booted device with f2fs encryption
Change-Id: I3c302564262412a5d5e672bd213e7cfada5f49cc

5 years agoMerge "Fix variable unpacking mismatch in bootanalyze.py"
Treehugger Robot [Thu, 25 Oct 2018 23:22:20 +0000 (23:22 +0000)]
Merge "Fix variable unpacking mismatch in bootanalyze.py"

5 years agoFix variable unpacking mismatch in bootanalyze.py
Tom Cherry [Thu, 25 Oct 2018 21:22:15 +0000 (14:22 -0700)]
Fix variable unpacking mismatch in bootanalyze.py

Fix for the below mismatch that I've seen in recent boot time runs

BootAnimEnd time or BootComplete-kernel not captured in both log,
cannot get time diff
    main()
  File "system/extras/boottime_tools/bootanalyze/bootanalyze.py", line 123, in main
    error_time, components_to_monitor)
ValueError: need more than 4 values to unpack

Test: no unpack mismatch in recent runs
Change-Id: I4d39453964b9b4036d6c0aaff6cac1b030865445

5 years agoMerge "partition_tools: Update lpdump for metadata format changes."
David Anderson [Thu, 25 Oct 2018 18:54:55 +0000 (18:54 +0000)]
Merge "partition_tools: Update lpdump for metadata format changes."

5 years agoMerge pie-platform-release to aosp-master - DO NOT MERGE
Bill Yi [Wed, 24 Oct 2018 21:48:18 +0000 (14:48 -0700)]
Merge pie-platform-release to aosp-master - DO NOT MERGE

Change-Id: Id7b62baaf4af7826840284c5ff4c7a96046660d0

5 years agoMerge "libpagemap: pm_map: skip pages that are neither present nor swapped."
Treehugger Robot [Wed, 24 Oct 2018 18:19:19 +0000 (18:19 +0000)]
Merge "libpagemap: pm_map: skip pages that are neither present nor swapped."

5 years agoMerge "Add preloads_copy script"
Anton Hansson [Wed, 24 Oct 2018 17:09:11 +0000 (17:09 +0000)]
Merge "Add preloads_copy script"

5 years agoMerge "libperfmgr: update to c++17 and add tidy rule"
Wei Wang [Wed, 24 Oct 2018 15:04:46 +0000 (15:04 +0000)]
Merge "libperfmgr: update to c++17 and add tidy rule"

5 years agoAdd preloads_copy script
Anton Hansson [Tue, 23 Oct 2018 15:26:32 +0000 (16:26 +0100)]
Add preloads_copy script

Copied from device/google/crosshatch, to serve as the canonical
location for this script to be shared between devices.

Bug: 80508492
Test: make
Change-Id: I567c785af0a690fbbba3df0553922735b96f7390

5 years agolibperfmgr: update to c++17 and add tidy rule
Wei Wang [Wed, 24 Oct 2018 05:44:31 +0000 (22:44 -0700)]
libperfmgr: update to c++17 and add tidy rule

Test: libperfmgr_test
Change-Id: If8162ebc1eb9489429e7f9792b3422f3ae46093b

5 years agolibpagemap: pm_map: skip pages that are neither present nor swapped.
Sandeep Patil [Tue, 9 Oct 2018 20:58:01 +0000 (13:58 -0700)]
libpagemap: pm_map: skip pages that are neither present nor swapped.

The pm_map_workingset() code needlessly iterates through all the pages
in the map regardless of whether they are actually present or not. Fix
that by skipping the page if its not swapped AND not present.

Bug: 111694435
Test: procmem -h -w 1

Change-Id: I8f16e8c516a5272ebeaa537c07b08ae9f41b73ca
Signed-off-by: Sandeep Patil <sspatil@google.com>
5 years agoMark libverity_tree as recovery_available for update_engine_sideload
Dan Willemsen [Tue, 23 Oct 2018 21:15:23 +0000 (14:15 -0700)]
Mark libverity_tree as recovery_available for update_engine_sideload

Test: build update_engine_sideload
Change-Id: I9a77e5e45f5acb0e7e3be0b6b080997c2b110691

5 years agoMerge "libperfmgr: clean up log format"
Treehugger Robot [Tue, 23 Oct 2018 00:52:13 +0000 (00:52 +0000)]
Merge "libperfmgr: clean up log format"

5 years agolibperfmgr: clean up log format
Wei Wang [Mon, 22 Oct 2018 22:19:46 +0000 (15:19 -0700)]
libperfmgr: clean up log format

Test: Build and libperfmgr_test passed
Change-Id: Ie0bf6c49f1d3f2660729b4fea9bb8aab30eea154

5 years agopartition_tools: Update lpdump for metadata format changes.
David Anderson [Mon, 22 Oct 2018 19:19:27 +0000 (12:19 -0700)]
partition_tools: Update lpdump for metadata format changes.

Bug: 116802789
Test: lpdump super_empty.img
Change-Id: I62cd28333413897e30a4673b7f97490c984f6611

5 years agoMerge "HintManager: Fix verbose message output"
Treehugger Robot [Mon, 22 Oct 2018 18:38:27 +0000 (18:38 +0000)]
Merge "HintManager: Fix verbose message output"

5 years agoHintManager: Fix verbose message output
Greg Kaiser [Mon, 22 Oct 2018 13:53:09 +0000 (06:53 -0700)]
HintManager: Fix verbose message output

The << bitshift operator has a higher precedence than the
ternary ?: conditional operator.  Thus, we need to use parentheses
to make sure we get "true" or "false" output as desired.

Test: TreeHugger
Change-Id: Iaa6e3e36e4944aa535b10490624332efba8f8a2f

5 years agoMerge "libperfmgr: Add a new type of node to manage property"
Wei Wang [Sun, 21 Oct 2018 03:19:21 +0000 (03:19 +0000)]
Merge "libperfmgr: Add a new type of node to manage property"

5 years agolibperfmgr: Add a new type of node to manage property
Wei Wang [Sat, 20 Oct 2018 04:57:04 +0000 (21:57 -0700)]
libperfmgr: Add a new type of node to manage property

PowerHAL sometimes need set properties, adding a new type of node to
support this usage.

Change-Id: I0c04df831d10f16a37f6ae5ae234a9ef34fc5f54
Merged-In: I18a4a50993e262c59460dc5e6cbace22b2b50047
Fixes: 116731391
Bug: 110166984
Test: Add new unit tests and libperfmgr_test passing

5 years agoMerge "libfec: Drop the extern "C" wrapping."
Tao Bao [Thu, 18 Oct 2018 23:33:15 +0000 (23:33 +0000)]
Merge "libfec: Drop the extern "C" wrapping."

5 years agolibfec: Drop the extern "C" wrapping.
Tao Bao [Thu, 18 Oct 2018 22:14:26 +0000 (15:14 -0700)]
libfec: Drop the extern "C" wrapping.

squashfs_utils.h does it in its header.

Test: `mmma -j system/extra/libfec`
Change-Id: I8cc4b5e281fe5649cbb92021285e05e8a5f28ebf

5 years agoMerge "simpleperf: handle memfds created by memfd_create."
Treehugger Robot [Thu, 18 Oct 2018 03:25:39 +0000 (03:25 +0000)]
Merge "simpleperf: handle memfds created by memfd_create."

5 years agosimpleperf: handle memfds created by memfd_create.
Yabin Cui [Thu, 18 Oct 2018 00:19:56 +0000 (17:19 -0700)]
simpleperf: handle memfds created by memfd_create.

memfds can be created by ART to store jit code. Map records of them
can override map records of jitted methods. So omit them.

Bug: none
Test: run simpleperf_unit_test.
Test: run simpleperf manually.
Change-Id: Ie800ecfea8f0c0d7de8cee452fb1553c30de22e1

5 years agoMerge "partition_tools: Update lpdump to build against liblp changes."
Treehugger Robot [Tue, 16 Oct 2018 23:41:42 +0000 (23:41 +0000)]
Merge "partition_tools: Update lpdump to build against liblp changes."

5 years agoMerge "Revert "simpleperf: enforce clockid support in Android Q.""
Treehugger Robot [Tue, 16 Oct 2018 02:58:57 +0000 (02:58 +0000)]
Merge "Revert "simpleperf: enforce clockid support in Android Q.""

5 years agoRevert "simpleperf: enforce clockid support in Android Q."
Yabin Cui [Mon, 15 Oct 2018 23:36:16 +0000 (23:36 +0000)]
Revert "simpleperf: enforce clockid support in Android Q."

This reverts commit 4bf4bfaafdfb264ded7f4f9aeb6ad874dbe179d5.

Reason for revert: it requires new kernel features in upgrading devices.

Bug: 115760286
Change-Id: I391562560e5f1ad93f2cce7f784eae1108e680a9

5 years agopartition_tools: Update lpdump to build against liblp changes.
David Anderson [Fri, 12 Oct 2018 00:52:24 +0000 (17:52 -0700)]
partition_tools: Update lpdump to build against liblp changes.

Bug: 116802789
Test: mm lpdump
Change-Id: If559c07e403fdeddc3a44e2cad7e5435bdd71ca6

5 years agoMerge PPR2.181005.003 from pi-release-2 into pi-platform-release.
Bill Rassieur [Wed, 10 Oct 2018 17:32:39 +0000 (17:32 +0000)]
Merge PPR2.181005.003 from pi-release-2 into pi-platform-release.

Change-Id: I33214d649d8c198193394f9a1551c17485ce1f68
BUG: 117431430

5 years agoMerge "Perfprofd: Introduce libsimpleperf_dex_read and read vdex files"
Treehugger Robot [Fri, 5 Oct 2018 20:26:26 +0000 (20:26 +0000)]
Merge "Perfprofd: Introduce libsimpleperf_dex_read and read vdex files"

5 years agoMerge "Add noexcept to move constructors and assignment operators."
Treehugger Robot [Fri, 5 Oct 2018 17:52:19 +0000 (17:52 +0000)]
Merge "Add noexcept to move constructors and assignment operators."

5 years agoAdd noexcept to move constructors and assignment operators.
Chih-Hung Hsieh [Tue, 25 Sep 2018 21:30:16 +0000 (14:30 -0700)]
Add noexcept to move constructors and assignment operators.

Bug: 116614593
Test: build with WITH_TIDY=1
Change-Id: I92ae7348e51e0610cef54b80087189bb1fe5b12c

5 years agoMerge "Simpleperf: Use defaults to pass static libs"
Andreas Gampe [Fri, 5 Oct 2018 00:01:44 +0000 (00:01 +0000)]
Merge "Simpleperf: Use defaults to pass static libs"

5 years agoMerge "Add new parameter for creation of MapInfo object."
Christopher Ferris [Thu, 4 Oct 2018 22:38:26 +0000 (22:38 +0000)]
Merge "Add new parameter for creation of MapInfo object."

5 years agoMerge "Simpleperf: Add enh to OWNERS"
Treehugger Robot [Thu, 4 Oct 2018 18:46:14 +0000 (18:46 +0000)]
Merge "Simpleperf: Add enh to OWNERS"

5 years agoMerge "partition_tools: Remove references to partition guid."
David Anderson [Thu, 4 Oct 2018 18:20:47 +0000 (18:20 +0000)]
Merge "partition_tools: Remove references to partition guid."

5 years agoSimpleperf: Add enh to OWNERS
Andreas Gampe [Thu, 4 Oct 2018 17:29:49 +0000 (10:29 -0700)]
Simpleperf: Add enh to OWNERS

Change-Id: I9935bee245c05c09f52bd903b14c6879dd96477d
Exempt-From-Owner-Approval: Adding owner
Test: N/A

5 years agopartition_tools: Remove references to partition guid.
David Anderson [Thu, 4 Oct 2018 15:38:09 +0000 (08:38 -0700)]
partition_tools: Remove references to partition guid.

Bug: 117229984
Test: builds with PRODUCT_USE_LOGICAL_PARTITIONS=true
Change-Id: Ibba49f7a066fd190f8431253302f1437f07ba6dd

5 years agoMerge "Add /data/apex to directories that don't need to be encrypted."
Martijn Coenen [Thu, 4 Oct 2018 07:08:54 +0000 (07:08 +0000)]
Merge "Add /data/apex to directories that don't need to be encrypted."

5 years agoAdd new parameter for creation of MapInfo object.
Christopher Ferris [Wed, 3 Oct 2018 21:14:36 +0000 (14:14 -0700)]
Add new parameter for creation of MapInfo object.

Bug: 109657296

Test: Unit tests pass.
Change-Id: Ifa7ac689467b10728bfbbbfae0c6f78b20b78cda

5 years agoMerge "partition_tools: Add support for partition groups."
Treehugger Robot [Wed, 3 Oct 2018 20:33:45 +0000 (20:33 +0000)]
Merge "partition_tools: Add support for partition groups."

5 years agoAdd /data/apex to directories that don't need to be encrypted.
Martijn Coenen [Wed, 3 Oct 2018 14:56:15 +0000 (16:56 +0200)]
Add /data/apex to directories that don't need to be encrypted.

There's no user data there, just code.

Bug: 112455435
Test: Using an APEX with Direct I/O in /data/apex works again
Change-Id: I5e5557445ea5d638d2dfc4db7d782ee2da207bc1

5 years agopartition_tools: Add support for partition groups.
David Anderson [Wed, 3 Oct 2018 01:50:12 +0000 (18:50 -0700)]
partition_tools: Add support for partition groups.

lpmake: Add a new -g/--groups parameter to add partition groups. The
syntax is name:size. In addition, a fifth argument can be added to
-p/--partition, to specify a group for that partition. Example:

  lpmake --group google:102400000 \
         --partition system:UUID:readonly:4096:google

In addition, lpdump will now display the groups table and group
assignments.

Bug: 116817738
Test: lpmake with --groups
      lpdump new partition table

Change-Id: Ic1eb995f3bcf5abc7be180ac03c8ba4b82a10045

5 years agoMerge "verity: Support partial blocks in Update()."
Sen Jiang [Wed, 3 Oct 2018 00:16:31 +0000 (00:16 +0000)]
Merge "verity: Support partial blocks in Update()."

5 years agoverity: Support partial blocks in Update().
Sen Jiang [Tue, 2 Oct 2018 01:07:54 +0000 (18:07 -0700)]
verity: Support partial blocks in Update().

In update_engine we get data from a callback, usually this will be a
multiple of the block size, but that's not guaranteed.

Bug: 28171891
Test: build_verity_tree_test
Change-Id: I2fdf40e6e3750a86d409885917d3b5aeb77643d1

5 years agoPerfprofd: Introduce libsimpleperf_dex_read and read vdex files
Andreas Gampe [Wed, 19 Sep 2018 02:25:24 +0000 (19:25 -0700)]
Perfprofd: Introduce libsimpleperf_dex_read and read vdex files

Add libsimpleperf_dex_read module to allow perfprofd to read and
extract symbols from dex files.

Use libart to read vdex files for their dex file offsets. Use
libsimpleperf_dex_read to find symbols.

Bug: 73175642
Test: mmma system/extras/perfprofd
Change-Id: Ibe67087692f7ede4caf2d3b98a1cbfad570baa7c

5 years agoSimpleperf: Use defaults to pass static libs
Andreas Gampe [Mon, 17 Sep 2018 20:33:02 +0000 (13:33 -0700)]
Simpleperf: Use defaults to pass static libs

Refactor the blueprint file to pass required static-library dependencies
via a defaults object instead of linking them whole-static-libs. This
will avoid double linking.

Bug: 73175642
Test: mmma system/extras/simpleperf
Test: mmma system/extras/perfprofd
Test: perfprofd_test
Change-Id: I596477748284dfa48dfc1a2202613f7a20a429ee

5 years agoMerge "verity: Add HashTreeBuilder::CheckHashTree()."
Sen Jiang [Fri, 28 Sep 2018 18:59:36 +0000 (18:59 +0000)]
Merge "verity: Add HashTreeBuilder::CheckHashTree()."

5 years agoMerge "Perfprofd: Make the service non-oneshot"
Treehugger Robot [Tue, 25 Sep 2018 03:09:50 +0000 (03:09 +0000)]
Merge "Perfprofd: Make the service non-oneshot"

5 years agoMerge "Fix clang-tidy performance warnings in system/extra."
Treehugger Robot [Tue, 18 Sep 2018 01:35:33 +0000 (01:35 +0000)]
Merge "Fix clang-tidy performance warnings in system/extra."

5 years agoFix clang-tidy performance warnings in system/extra.
Chih-Hung Hsieh [Mon, 17 Sep 2018 22:23:47 +0000 (15:23 -0700)]
Fix clang-tidy performance warnings in system/extra.

* Use more efficient overloaded string methods.

Bug: 30411878
Test: build with WITH_TIDY=1
Change-Id: If1a2931cab7f70e4a4bd5fcc06b2ae0260169cd8

5 years agoMerge "Remove the mkuserimg_mke2fs.sh"
Tianjie Xu [Thu, 13 Sep 2018 22:43:18 +0000 (22:43 +0000)]
Merge "Remove the mkuserimg_mke2fs.sh"

5 years agoRemove the mkuserimg_mke2fs.sh
Tianjie Xu [Mon, 10 Sep 2018 21:18:56 +0000 (14:18 -0700)]
Remove the mkuserimg_mke2fs.sh

The shell script is not used as we have switched to the python binary.

Test: mma
Bug: 112555072
Change-Id: I8849fc91a6d62b58a01b29544f2bc5b24c7df89e

5 years agoMerge "bootanalyze: Add SysUI timing"
Treehugger Robot [Sat, 8 Sep 2018 04:29:18 +0000 (04:29 +0000)]
Merge "bootanalyze: Add SysUI timing"

5 years agoMerge "libperfmgr: add additional OWNERS and cpplint config"
Treehugger Robot [Sat, 8 Sep 2018 04:17:21 +0000 (04:17 +0000)]
Merge "libperfmgr: add additional OWNERS and cpplint config"

5 years agolibperfmgr: add additional OWNERS and cpplint config
Wei Wang [Fri, 7 Sep 2018 21:46:10 +0000 (14:46 -0700)]
libperfmgr: add additional OWNERS and cpplint config

Test: build
Change-Id: Iede2faacfe24e74b817d9c159566998a71d36b7b

5 years agobootanalyze: Add SysUI timing
Wei Wang [Fri, 7 Sep 2018 21:46:10 +0000 (14:46 -0700)]
bootanalyze: Add SysUI timing

Bug: 112049386
Test: bootanalyze.py -r -c system/extras/boottime_tools/bootanalyze/config.yaml -n 10 -g
Change-Id: I0a2fcbaaebc3ebbfec399fd3c8a1d977b95f96bb

5 years agoverity: Add HashTreeBuilder::CheckHashTree().
Sen Jiang [Tue, 4 Sep 2018 21:16:06 +0000 (14:16 -0700)]
verity: Add HashTreeBuilder::CheckHashTree().

Check the built hash tree against a given hash tree in a buffer, used
to verify the hash tree when generating OTA.

Bug: 28171891
Test: generate a payload with verity hash tree
Change-Id: I60d6c3657343438b7720727874ab849e5970e576

5 years agoMerge changes I10561d93,I05d248a7
Treehugger Robot [Tue, 4 Sep 2018 20:57:30 +0000 (20:57 +0000)]
Merge changes I10561d93,I05d248a7

* changes:
  Perfprofd: Add TEST_MAPPING
  Perfprofd: Disable tests when lacking arch_perfmon

5 years agoMerge "perfprofd: use getHealthInfo for get_charging"
Treehugger Robot [Sat, 1 Sep 2018 17:27:23 +0000 (17:27 +0000)]
Merge "perfprofd: use getHealthInfo for get_charging"

5 years agoMerge "Remove ashmem from system/extras"
Joel Fernandes [Thu, 30 Aug 2018 19:30:58 +0000 (19:30 +0000)]
Merge "Remove ashmem from system/extras"

5 years agoMerge "perfprofd: add env to disable change of perf_event_paranoid."
Yabin Cui [Thu, 30 Aug 2018 17:07:56 +0000 (17:07 +0000)]
Merge "perfprofd: add env to disable change of perf_event_paranoid."

5 years agoperfprofd: add env to disable change of perf_event_paranoid.
Yabin Cui [Wed, 29 Aug 2018 21:54:19 +0000 (14:54 -0700)]
perfprofd: add env to disable change of perf_event_paranoid.

This is to avoid a cts test failure (which checks the value of
perf_event_paranoid) while perfprofd is running.

Bug: 111855759
Test: run perfprofd_test and perf_event_paranoid isn't changed.
Change-Id: Ifa610a21b560d0eb536cb76914b116bd1e769634

5 years agoPerfprofd: Add TEST_MAPPING
Andreas Gampe [Thu, 30 Aug 2018 15:26:28 +0000 (08:26 -0700)]
Perfprofd: Add TEST_MAPPING

Bug: 73175642
Test: pushd system/extras/perfprofd ; atest ; popd
Change-Id: I10561d93b8c5c01c0bc3e28c1a08d947045905d3

5 years agoPerfprofd: Disable tests when lacking arch_perfmon
Andreas Gampe [Wed, 29 Aug 2018 01:17:10 +0000 (18:17 -0700)]
Perfprofd: Disable tests when lacking arch_perfmon

Under certain circumstances perf won't be available. As we want to
run some tests, anyways, disable the ones that need perf.

Bug: 113359952
Test: mmma system/extras/perfprofd
Test: perfprofd_test
Change-Id: I05d248a7952a5939f9b74729a5809469abeaaa66

5 years agoMerge "simpleperf: sync JIT debug info with records."
Yabin Cui [Thu, 30 Aug 2018 00:20:46 +0000 (00:20 +0000)]
Merge "simpleperf: sync JIT debug info with records."

5 years agoMerge "Perfprofd: Fix AndroidTest.xml"
Treehugger Robot [Wed, 29 Aug 2018 23:59:31 +0000 (23:59 +0000)]
Merge "Perfprofd: Fix AndroidTest.xml"

5 years agoPerfprofd: Fix AndroidTest.xml
Andreas Gampe [Wed, 29 Aug 2018 17:54:09 +0000 (10:54 -0700)]
Perfprofd: Fix AndroidTest.xml

Bug: 73175642
Bug: 113512417
Test: mmma system/extras/perfprofd
Test: atest perfprofd_test
Change-Id: I3ab707ea91998d99032aca62ff64eb21b922ca17

5 years agosimpleperf: sync JIT debug info with records.
Yabin Cui [Mon, 27 Aug 2018 17:30:20 +0000 (10:30 -0700)]
simpleperf: sync JIT debug info with records.

To save time, simpleperf doesn't check JIT debug info update each time
unwinding a sample. Instead, it checks JIT debug info update every
100ms. So some samples (about 1%) can be failed to unwind because of
lacking the latest JIT debug info.

This patch fixes it by using monotonic timestamps to sync JIT debug info
and samples. It contains below changes:
1. Use monotonic timestamp for records by default if that is supported.
2. Add a priority queue in JITDebugReader to sort existing JIT debug
info by timestamp. Each time reading new JIT debug info from remote
processes, it is put in the queue.
3. Each time processing a record, JITDebugReader flushes all debug info
in the queue generated before the record. So a record only sees JIT
debug info generated before it.
4. If unwinding a sample fails because of incomplete JIT debug info,
read newest debug info from the process and retry unwinding.

Bug: 110923759
Test: run simpleperf manually and check no unwinding fails because
Test: of lacking the latest JIT debug info.

Change-Id: I769b72a3345f917e5c0f9a9936d19bca536e1153

5 years agoperfprofd: use getHealthInfo for get_charging
Yifan Hong [Tue, 28 Aug 2018 22:10:42 +0000 (15:10 -0700)]
perfprofd: use getHealthInfo for get_charging

get_charging returns whether the phone is connected
to a charger. The phone can be connected to a charger without
actually being charged.

Test: perfprofd_test
Bug: 112184119
Change-Id: I0b574c73043056c7ceceb38df343ba7c9dce4ebf

5 years agoPerfprofd: Make the service non-oneshot
Andreas Gampe [Tue, 28 Aug 2018 20:45:13 +0000 (13:45 -0700)]
Perfprofd: Make the service non-oneshot

Let the service be restarted.

Bug: 73175642
Test: mmma system/extras/perfprofd
Change-Id: Ib8b4cbe0fdcbc0e2926bcab9d9e9107dcdd01851

5 years agoMerge "Clean up the global -Wno- in system/extras."
Elliott Hughes [Tue, 28 Aug 2018 14:56:26 +0000 (14:56 +0000)]
Merge "Clean up the global -Wno- in system/extras."

5 years agoMerge "simpleperf: update simpleperf prebuilts to build 4977750."
Treehugger Robot [Mon, 27 Aug 2018 20:34:14 +0000 (20:34 +0000)]
Merge "simpleperf: update simpleperf prebuilts to build 4977750."

5 years agosimpleperf: update simpleperf prebuilts to build 4977750.
Yabin Cui [Mon, 27 Aug 2018 17:45:38 +0000 (10:45 -0700)]
simpleperf: update simpleperf prebuilts to build 4977750.

Taken from branch aosp-master.

Bug: none
Test: run test.py on linux.

Change-Id: I3a086e44fc531e2402159d47bd87e83987ceb960

5 years agoClean up the global -Wno- in system/extras.
Elliott Hughes [Mon, 27 Aug 2018 19:11:07 +0000 (12:11 -0700)]
Clean up the global -Wno- in system/extras.

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

5 years agoRemove ashmem from system/extras
Joel Fernandes [Fri, 24 Aug 2018 19:20:28 +0000 (12:20 -0700)]
Remove ashmem from system/extras

This topic removes ashmem from ART. Changes the names in system/extras
too. It only affects "dalvik-" ashmem regions which are the majority.

Test: run simpleperf_unit_test.
Test: run perfprofd_test.

Change-Id: I3ee65c8d401427613b4b17a66af807ab81ff8a80
Signed-off-by: Joel Fernandes <joelaf@google.com>
5 years agoMerge "Remove -Wno-unused-result from the defaults."
Treehugger Robot [Sun, 26 Aug 2018 21:47:13 +0000 (21:47 +0000)]
Merge "Remove -Wno-unused-result from the defaults."

5 years agoMerge "perfprofd: fix test PerfProfdTest.ConfigFileParsing."
Treehugger Robot [Sat, 25 Aug 2018 01:42:34 +0000 (01:42 +0000)]
Merge "perfprofd: fix test PerfProfdTest.ConfigFileParsing."

5 years agoperfprofd: fix test PerfProfdTest.ConfigFileParsing.
Yabin Cui [Fri, 24 Aug 2018 22:33:29 +0000 (15:33 -0700)]
perfprofd: fix test PerfProfdTest.ConfigFileParsing.

Bug: none
Test: run perfprofd_test.
Change-Id: I4aabffc0043fa53c1216648ec184b09a14868f6f

5 years agoMerge "ext4_utils: Build ext4_crypt_init_extensions.cpp into shared lib."
Tao Bao [Fri, 24 Aug 2018 21:48:41 +0000 (21:48 +0000)]
Merge "ext4_utils: Build ext4_crypt_init_extensions.cpp into shared lib."

5 years agoMerge "simpleperf: fix the height of generated flamegraphs."
Yabin Cui [Fri, 24 Aug 2018 17:49:11 +0000 (17:49 +0000)]
Merge "simpleperf: fix the height of generated flamegraphs."

5 years agoRemove -Wno-unused-result from the defaults.
Elliott Hughes [Fri, 24 Aug 2018 17:38:04 +0000 (10:38 -0700)]
Remove -Wno-unused-result from the defaults.

Doesn't seem to be anyone relying on it right now.

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

5 years agoMerge changes from topic "working-set-tol"
Treehugger Robot [Thu, 23 Aug 2018 01:35:23 +0000 (01:35 +0000)]
Merge changes from topic "working-set-tol"

* changes:
  libpagemap: procmem: Add option to sort by USS.
  libpagemap: procmem: Reset working set everytime if page_idle is used.
  libpagemap: Add APIs to mark and read idle pages of a process.
  libpagemap: add .clang-format-4

5 years agolibpagemap: procmem: Add option to sort by USS.
Sandeep Patil [Thu, 16 Aug 2018 20:00:01 +0000 (13:00 -0700)]
libpagemap: procmem: Add option to sort by USS.

In same case, especially working set, USS may be much more actionable
for a process than PSS. Add option to sort by USS in all cases for the
same.

Bug: 111694435
Test: procmem -h -u 1
Test: procmem -h -i -u -w 1

Change-Id: Ifb9c4bd2ff18bb73d82c492cb1862a065ed630b4
Signed-off-by: Sandeep Patil <sspatil@google.com>
5 years agolibpagemap: procmem: Reset working set everytime if page_idle is used.
Sandeep Patil [Thu, 16 Aug 2018 18:55:56 +0000 (11:55 -0700)]
libpagemap: procmem: Reset working set everytime if page_idle is used.

Idle page tracking works a bit differently than that of clear_refs. A
write of 1 to page_idle/bitmap tell the kernel to determine if the page is
"idle" and is not accessed *anytime* in the past.

This way, we end up catching any new allocations that may have been done
since the last time working set was reset too.

Bug: 111694435
Test: procmem -h -W 1 && procmem -h -w 1
Test: procmem -h -i -W 1
Test: procmem -h -i -w 1
Test: procmem -h -i -w <pid>; alloc memory in <pid>; procmem -h -i -w <pid>
      Observe that newly allocated and set memory is no accounted in the
      working set.

Change-Id: Icfabd4e27c006b84e01502fff666d76ebb74c409
Signed-off-by: Sandeep Patil <sspatil@google.com>
5 years agolibpagemap: Add APIs to mark and read idle pages of a process.
Sandeep Patil [Wed, 15 Aug 2018 20:24:09 +0000 (13:24 -0700)]
libpagemap: Add APIs to mark and read idle pages of a process.

pm_kernel_init_page_idle()   - Initialize idle page tracking.
pm_kernel_has_page_idle()    -  Returns 1 if idle page tracking has been
                               successfully initialized.
pm_kernel_get_page_idle()    - Gets the idle status of the page frame.
pm_kernel_mark_page_idle()   - Marks one or many page frames idle.
pm_kernel_page_is_accessed() - Returns 1 if page is accessed.

pm_map_mark_idle()           - Marks mapped pages from a pagemap idle.

Added '-i' usage flag to procmem that tells procmem to use idle page
tracking. The flag is ignored in the absense of '-w' or '-W' options.

Bug: 111694435
Test: procmem -i -h 1
Test: procmem -h -W 1 && procmem -h -w 1
Test: procmem -h -i -W 1 && procmem -h -i -w 1

Change-Id: Ib9cb679427798426c9477500552e9aa83a40fd48
Signed-off-by: Sandeep Patil <sspatil@google.com>
5 years agolibpagemap: add .clang-format-4
Sandeep Patil [Wed, 22 Aug 2018 17:42:14 +0000 (10:42 -0700)]
libpagemap: add .clang-format-4

Bug: None
Test: None

Change-Id: I7413d0dcdefddec66439f5ade29aeb898f82e0f4
Signed-off-by: Sandeep Patil <sspatil@google.com>
5 years agoMerge "Remove Wno-unused-variable from defaults and fix resulting warnings."
Treehugger Robot [Wed, 22 Aug 2018 23:10:27 +0000 (23:10 +0000)]
Merge "Remove Wno-unused-variable from defaults and fix resulting warnings."

5 years agoRemove Wno-unused-variable from defaults and fix resulting warnings.
Sandeep Patil [Wed, 22 Aug 2018 21:33:15 +0000 (14:33 -0700)]
Remove Wno-unused-variable from defaults and fix resulting warnings.

Bug: 113035007
Test: mmm -j system/extras

Change-Id: Id3fa08008b643002baa5f0be0961b36db35e25a9
Signed-off-by: Sandeep Patil <sspatil@google.com>
5 years agoMerge "lpflash: Update for FlashPartitionTable changes."
Treehugger Robot [Wed, 22 Aug 2018 16:45:33 +0000 (16:45 +0000)]
Merge "lpflash: Update for FlashPartitionTable changes."

5 years agoMerge "Build mke2fs.conf with Android.bp."
Tao Bao [Tue, 21 Aug 2018 22:35:48 +0000 (22:35 +0000)]
Merge "Build mke2fs.conf with Android.bp."

5 years agoMerge "libpagemap: make pm_kernel_* APIs consistently return negative errors."
Sandeep Patil [Tue, 21 Aug 2018 18:16:36 +0000 (18:16 +0000)]
Merge "libpagemap: make pm_kernel_* APIs consistently return negative errors."

5 years agoBuild mke2fs.conf with Android.bp.
Tao Bao [Wed, 15 Aug 2018 05:16:01 +0000 (22:16 -0700)]
Build mke2fs.conf with Android.bp.

Bug: 112780007
Test: Build with other changes in the topic (aosp_taimen-userdebug).
Test: Boot into recovery. Verify basic functionalities (`adb shell` and
      `adb sideload`, factory reset).
Change-Id: Ic72c5bebf6c72373e67a483062dc160638c68a4e

5 years agoMerge "python: run tests for both python and python3."
Yabin Cui [Fri, 17 Aug 2018 01:10:37 +0000 (01:10 +0000)]
Merge "python: run tests for both python and python3."