OSDN Git Service

android-x86/system-extras.git
6 years agoMerge "simpleperf: allow inferno to run from any dir."
Treehugger Robot [Thu, 21 Sep 2017 01:14:34 +0000 (01:14 +0000)]
Merge "simpleperf: allow inferno to run from any dir."

6 years agosimpleperf: allow inferno to run from any dir.
Yabin Cui [Wed, 20 Sep 2017 23:20:04 +0000 (16:20 -0700)]
simpleperf: allow inferno to run from any dir.

Previously inferno.sh/.bat can only run from scripts/, this CL
removes the restriction.

Also add -o option to select report path.

Bug: http://b/32834638
Test: run test.py.
Change-Id: Ib1651dcd1beedac5be00249150e0b74fea906924

6 years agoMerge "Fix clang static analyzer warnings"
Treehugger Robot [Wed, 20 Sep 2017 00:23:44 +0000 (00:23 +0000)]
Merge "Fix clang static analyzer warnings"

6 years agoMerge remote-tracking branch 'aosp/oreo-cts-dev' into HEAD - DO NOT MERGE
Bill Yi [Fri, 15 Sep 2017 20:48:14 +0000 (13:48 -0700)]
Merge remote-tracking branch 'aosp/oreo-cts-dev' into HEAD - DO NOT MERGE

Change-Id: I126b325ab5686ab9a99735d47cad2a20e53022ca

6 years agoMerge "simpleperf: fix report_sample_test." into oreo-cts-dev
Treehugger Robot [Thu, 14 Sep 2017 17:30:43 +0000 (17:30 +0000)]
Merge "simpleperf: fix report_sample_test." into oreo-cts-dev

6 years agoMerge "Mark the module as VNDK or VNDK-SP in Android.bp"
Treehugger Robot [Thu, 14 Sep 2017 01:59:30 +0000 (01:59 +0000)]
Merge "Mark the module as VNDK or VNDK-SP in Android.bp"

6 years agoMerge "simpleperf: Omit dwarf-callgraph tests running on arm translation tools."
Treehugger Robot [Thu, 14 Sep 2017 01:45:39 +0000 (01:45 +0000)]
Merge "simpleperf: Omit dwarf-callgraph tests running on arm translation tools."

6 years agosimpleperf: fix report_sample_test.
Yabin Cui [Mon, 15 May 2017 20:39:36 +0000 (13:39 -0700)]
simpleperf: fix report_sample_test.

When running cmd_report_sample.* tests, it may call
ReportSampleCmd()->Run() more than once. If we shutdown
protobuf library in one call, using protobuf in the
following calls will encounter failures.

Bug: http://b/37996565
Test: run CtsSimpleperfTestCases.
Change-Id: I5ca217406e786645d45fda518055c4a63ab3db3c
(cherry picked from commit b3675a5db81d02b07b92f8f13d37187a9cb4890c)

6 years agosimpleperf: Omit dwarf-callgraph tests running on arm translation tools.
Yabin Cui [Wed, 13 Sep 2017 20:21:32 +0000 (13:21 -0700)]
simpleperf: Omit dwarf-callgraph tests running on arm translation tools.

Bug: http://b/64946809
Test: run arm CtsSimpleperfTestCases32 on fugu.
Change-Id: I76ee44b8fd2a6022cbef32392ee0336fe4d14ade

6 years agoMerge "<stdbool.h> not necessary in C++."
Elliott Hughes [Fri, 8 Sep 2017 17:31:58 +0000 (17:31 +0000)]
Merge "<stdbool.h> not necessary in C++."

6 years ago<stdbool.h> not necessary in C++.
Elliott Hughes [Thu, 7 Sep 2017 20:34:03 +0000 (13:34 -0700)]
<stdbool.h> not necessary in C++.

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

6 years agoMark the module as VNDK or VNDK-SP in Android.bp
Justin Yun [Mon, 24 Jul 2017 06:19:45 +0000 (15:19 +0900)]
Mark the module as VNDK or VNDK-SP in Android.bp

As a VNDK/VNDK-SP module, Android.bp must have 'vndk' tag as well
as 'vendor_available: true'.

For a VNDK module, the 'vndk' tag has 'enabled: true'.
It will be installed system/lib(64)/vndk as a vendor variant.

For a VNDK-SP module, the 'vndk' tag has
'support_system_process: true' as well as 'enabled: true'.
It will be installed system/lib(64)/vndk-sp as a vendor variant.

Bug: 63866913
Test: build and boot with BOARD_VNDK_VERSION=current
Merged-In: I7a2eaf4894188d4d300fcc78380a2b05517c54f4
Change-Id: I7a2eaf4894188d4d300fcc78380a2b05517c54f4
(cherry picked from commit 953341705abd2a840b464928d9ce56e0c1f37b25)

6 years agoFix clang static analyzer warnings
Manoj Gupta [Tue, 5 Sep 2017 23:35:17 +0000 (16:35 -0700)]
Fix clang static analyzer warnings

Fix the following warnings:

system/extras/librank/librank.c:422:12: warning: Potential leak of
memory pointed to by 'pi' [clang-analyzer-unix.Malloc]
system/extras/librank/librank.c:137:29: warning: Call to 'realloc' has
an allocation size of 0 bytes [clang-analyzer-unix.API]
system/extras/librank/librank.c:95:21: warning: Call to 'realloc' has an
allocation size of 0 bytes [clang-analyzer-unix.API]

The memory leak is real but we don't care about memory leaks when exiting
main. So just replace return by exit to silence the analyzer.

Bug: b/27101951
Test:Warnings are gone.
Change-Id: I9af4ec4a4b740f5edcf9390b30a16b95d76e6a20

6 years agoMerge "simpleperf: support --clockid option in record cmd."
Yabin Cui [Tue, 5 Sep 2017 22:17:56 +0000 (22:17 +0000)]
Merge "simpleperf: support --clockid option in record cmd."

6 years agosimpleperf: support --clockid option in record cmd.
Yabin Cui [Fri, 1 Sep 2017 22:40:41 +0000 (15:40 -0700)]
simpleperf: support --clockid option in record cmd.

Setting clockid is supported in kernel 4.x.
Whether it is supported by the kernel can be checked
via `simpleperf list --show-features`.

Bug: http://b/65214671
Test: run simpleperf_unit_test.
Change-Id: I6f312cc62893af0fa5092ed91434b6df46435d7f

6 years agoMerge "simpleperf: update simpleperf prebuilts to build 4312148."
Yabin Cui [Fri, 1 Sep 2017 21:28:10 +0000 (21:28 +0000)]
Merge "simpleperf: update simpleperf prebuilts to build 4312148."

6 years agosimpleperf: update simpleperf prebuilts to build 4312148.
Yabin Cui [Fri, 1 Sep 2017 18:30:40 +0000 (11:30 -0700)]
simpleperf: update simpleperf prebuilts to build 4312148.

Taken from branch aosp-master.
Bug: http://b/65025325
Test: run test.py.

Change-Id: Ifa1b8620c47d3448a8924447371bf74461f97fb0

6 years agoMerge "simpleperf: fix --app option for multiprocess apps."
Yabin Cui [Thu, 31 Aug 2017 16:52:39 +0000 (16:52 +0000)]
Merge "simpleperf: fix --app option for multiprocess apps."

6 years agoMerge "fix memory leak in unittest."
Treehugger Robot [Wed, 30 Aug 2017 18:51:33 +0000 (18:51 +0000)]
Merge "fix memory leak in unittest."

6 years agofix memory leak in unittest.
Yunlian Jiang [Wed, 30 Aug 2017 16:50:05 +0000 (09:50 -0700)]
fix memory leak in unittest.

This fixes the warning
warning: Potential leak of memory pointed to by 'salt' [clang-analyzer-cplusplus.NewDeleteLeaks]

Bug: None
Test: The warning is gone.
Change-Id: I1a31188775c2a099949bf8b8e2613b71af5081cd

6 years agoMerge "Memory pressure"
Treehugger Robot [Wed, 30 Aug 2017 03:32:35 +0000 (03:32 +0000)]
Merge "Memory pressure"

6 years agosimpleperf: fix --app option for multiprocess apps.
Yabin Cui [Mon, 28 Aug 2017 21:49:04 +0000 (14:49 -0700)]
simpleperf: fix --app option for multiprocess apps.

1. Search all processes in an app when using --app option in record command.
2. Fix searching one app process when using -p option in app_profiler.py.
3. Add unittest for profiling multiprocess apps.

Bug: http://b/65025325
Test: run test.py

Change-Id: Iba2e97c2174815d0236636e3cf15b1fc17a5d838

6 years agoMerge "simpleperf: fix finding app's process."
Yabin Cui [Tue, 29 Aug 2017 16:22:28 +0000 (16:22 +0000)]
Merge "simpleperf: fix finding app's process."

6 years agosimpleperf: fix finding app's process.
Yabin Cui [Mon, 28 Aug 2017 22:49:33 +0000 (15:49 -0700)]
simpleperf: fix finding app's process.

Also check the return value of recording, fix some tiny errors in tests.

Bug: None.
Test: run test.py.
Change-Id: I42b33c796a302b71ca1c87888b4a2e9ad53306af

6 years agoMemory pressure
Sherry Yang [Sat, 26 Aug 2017 02:05:50 +0000 (19:05 -0700)]
Memory pressure

Create continuous memory pressure by adjusting
a child process's oom score and allocate in
the child. When a child is killed by
the low-memory-killer, fork another process and
continues until the program is killed or certain
number of iterations has reached.

Bug: 63926541
Test: run mem-pressure on target
Change-Id: Ic8ee60da7519c750de4bd690f26e31fa80c5cd49

6 years agoMerge "simpleperf: fix check of opening perf event files."
Yabin Cui [Fri, 25 Aug 2017 21:20:18 +0000 (21:20 +0000)]
Merge "simpleperf: fix check of opening perf event files."

6 years agosimpleperf: fix check of opening perf event files.
Yabin Cui [Fri, 25 Aug 2017 18:17:45 +0000 (11:17 -0700)]
simpleperf: fix check of opening perf event files.

When asked to monitor a process, record/stat cmd checks if we can
open perf event files for all threads successfully. However, it
fails when the monitored process has an exiting thread. This makes
record_cmd.duration_option test flakey, when there are exiting
threads in other tests, like record_cmd.handle_SIGHUP.

To fix this, only check if we can open perf event files for at
least one thread for each monitored process.

Bug: http://b/65047463
Test: run CtsSimpleperfTestCases.
Change-Id: Ia02ed498f49c9c6c452023ad31abb01a58071152

6 years agoMerge "Add missing libdl dependencies"
Pavlin Radoslavov [Wed, 23 Aug 2017 23:31:35 +0000 (23:31 +0000)]
Merge "Add missing libdl dependencies"

6 years agoAdd missing libdl dependencies
Pavlin Radoslavov [Wed, 23 Aug 2017 22:04:39 +0000 (15:04 -0700)]
Add missing libdl dependencies

Bug: 62815515
Test: lunch full-eng; make checkbuild
Change-Id: Iad3cf98d7c9e659ee517caf352613334215ea397

6 years agoMerge "Make cppreopts cleanup if it fails"
Treehugger Robot [Wed, 23 Aug 2017 19:39:41 +0000 (19:39 +0000)]
Merge "Make cppreopts cleanup if it fails"

6 years agoMake cppreopts cleanup if it fails
Alex Light [Tue, 25 Jul 2017 18:17:05 +0000 (11:17 -0700)]
Make cppreopts cleanup if it fails

Previously we would simply leave temporary files lying around if we
failed to rename them for some reason. This change makes us attempt to
clean the temporary files up.

Test: Phone boots.
Bug: 63995897
Change-Id: Ib876a626904bec090fe4f3bd228335feadb6a7c7

6 years agoMerge "simpleperf: improve test.py."
Yabin Cui [Tue, 22 Aug 2017 01:21:01 +0000 (01:21 +0000)]
Merge "simpleperf: improve test.py."
am: 12bc7ee848

Change-Id: I9bab0ca51e3272b0aed5a5b305d2474e8f1e86e3

6 years agoMerge "simpleperf: improve test.py."
Yabin Cui [Tue, 22 Aug 2017 01:07:11 +0000 (01:07 +0000)]
Merge "simpleperf: improve test.py."

6 years agosimpleperf: improve test.py.
Yabin Cui [Mon, 21 Aug 2017 23:28:48 +0000 (16:28 -0700)]
simpleperf: improve test.py.

Run tests only on Android >=N.
Fix a failed test on Android N.
Change app_profiler.py to make the tests less flakey.

Bug: http://b/63006886
Test: run test.py.
Change-Id: I625b15e44a6825aa7b479cb17caa86c0186f5385

6 years agoMerge "simpleperf: make inferno flamegraph resizable."
Yabin Cui [Mon, 21 Aug 2017 22:52:27 +0000 (22:52 +0000)]
Merge "simpleperf: make inferno flamegraph resizable."
am: 442f469d08

Change-Id: Id479db60cd9d47e4df37b0a8be38623de0eaafe3

6 years agoMerge "simpleperf: make inferno flamegraph resizable."
Yabin Cui [Mon, 21 Aug 2017 22:43:34 +0000 (22:43 +0000)]
Merge "simpleperf: make inferno flamegraph resizable."

6 years agoMerge "simpleperf: fix scripts based on test on darwin/windows."
Yabin Cui [Mon, 21 Aug 2017 21:40:16 +0000 (21:40 +0000)]
Merge "simpleperf: fix scripts based on test on darwin/windows."
am: b137bb2c74

Change-Id: I330a053333edb0d2b686d6dd1a63147951d614cf

6 years agoMerge "simpleperf: fix scripts based on test on darwin/windows."
Yabin Cui [Mon, 21 Aug 2017 21:32:20 +0000 (21:32 +0000)]
Merge "simpleperf: fix scripts based on test on darwin/windows."

6 years agosimpleperf: make inferno flamegraph resizable.
Yabin Cui [Fri, 18 Aug 2017 00:54:11 +0000 (17:54 -0700)]
simpleperf: make inferno flamegraph resizable.

By using jqueryui resizable and set the width of each
node by percentage, we can make the flamegraph resizable.

Bug: http://b/64035530
Test: run inferno.sh.
Change-Id: I1d56e4eecbceaa6189eff25995d20f758a8b4111

6 years agosimpleperf: fix scripts based on test on darwin/windows.
Yabin Cui [Mon, 21 Aug 2017 20:14:49 +0000 (13:14 -0700)]
simpleperf: fix scripts based on test on darwin/windows.

1. fix inferno.bat to correctly pass arguments.
2. type `inferno.bat` instead of `./inferno.bat`.
3. call `inferno.bat` in python should use shell=True.
4. fix the way to open browser on darwin/windows.

Bug: http://b/64035530
Test: run test.py on all platforms.

Change-Id: I5e22907d0c25186b129bf82e0f83d3b71e28ffb2

6 years agoMerge "simpleperf: support --profile_from_launch option in app_profiler.py."
Yabin Cui [Sat, 19 Aug 2017 02:57:32 +0000 (02:57 +0000)]
Merge "simpleperf: support --profile_from_launch option in app_profiler.py."
am: 0e6b67e308

Change-Id: I66d0e1d240d972ec9c39290a5b7ab43b85c80c75

6 years agoMerge "simpleperf: support --profile_from_launch option in app_profiler.py."
Yabin Cui [Sat, 19 Aug 2017 02:52:31 +0000 (02:52 +0000)]
Merge "simpleperf: support --profile_from_launch option in app_profiler.py."

6 years agosimpleperf: support --profile_from_launch option in app_profiler.py.
Yabin Cui [Fri, 18 Aug 2017 19:44:34 +0000 (12:44 -0700)]
simpleperf: support --profile_from_launch option in app_profiler.py.

Bug: http://b/34108866
Test: run test.py.
Change-Id: I6476b02fe31bf3f949e61640a8637582b09f270e

6 years agoMerge "simpleperf: add missing scripts in simpleperf_script.zip."
Yabin Cui [Fri, 18 Aug 2017 18:25:37 +0000 (18:25 +0000)]
Merge "simpleperf: add missing scripts in simpleperf_script.zip."
am: e1a9f9267f

Change-Id: I73e6afb0159518089b5841ccc34e92630f0353b6

6 years agoMerge "simpleperf: add missing scripts in simpleperf_script.zip."
Yabin Cui [Fri, 18 Aug 2017 18:22:26 +0000 (18:22 +0000)]
Merge "simpleperf: add missing scripts in simpleperf_script.zip."

6 years agosimpleperf: add missing scripts in simpleperf_script.zip.
Yabin Cui [Fri, 18 Aug 2017 18:19:41 +0000 (11:19 -0700)]
simpleperf: add missing scripts in simpleperf_script.zip.

Bug: http://b/64035530
Test: run `make sdk`.
Change-Id: I2e60ca530076ea46664a0afa0602a456786b03e6

6 years agoMerge "simpleperf: add doc for --trace-offcpu option."
Yabin Cui [Fri, 18 Aug 2017 01:11:28 +0000 (01:11 +0000)]
Merge "simpleperf: add doc for --trace-offcpu option."
am: bc53c51acc

Change-Id: Ic465e25c7683627469e113d1d2273bcdda5e1232

6 years agoMerge "simpleperf: add doc for --trace-offcpu option."
Yabin Cui [Fri, 18 Aug 2017 01:00:05 +0000 (01:00 +0000)]
Merge "simpleperf: add doc for --trace-offcpu option."

6 years agosimpleperf: add doc for --trace-offcpu option.
Yabin Cui [Thu, 17 Aug 2017 22:46:35 +0000 (15:46 -0700)]
simpleperf: add doc for --trace-offcpu option.

Bug: http://b/37572306
Test: run `remarkable README.md`.
Change-Id: I353dbc480a5af2755cde35132addaff890e715c5

6 years agoMerge "simpleperf: fix inferno and test content of report.html."
Yabin Cui [Thu, 17 Aug 2017 21:35:09 +0000 (21:35 +0000)]
Merge "simpleperf: fix inferno and test content of report.html."
am: 001e76be63

Change-Id: Id915fae598b6538f2a9e6ccb6454bdb7e075900e

6 years agoMerge "simpleperf: add run_simpleperf_on_device.py."
Yabin Cui [Thu, 17 Aug 2017 21:34:55 +0000 (21:34 +0000)]
Merge "simpleperf: add run_simpleperf_on_device.py."
am: 72dd31f567

Change-Id: I7ba9c0c46a3fcbb70cd30aaa10d2f5ca0ba789b0

6 years agoMerge "simpleperf: fix building simpleperf_script.zip."
Yabin Cui [Thu, 17 Aug 2017 21:34:42 +0000 (21:34 +0000)]
Merge "simpleperf: fix building simpleperf_script.zip."
am: 88fed2d53e

Change-Id: I79dedd05ddf937726e11d164d78c306409490b04

6 years agoMerge "simpleperf: fix inferno and test content of report.html."
Yabin Cui [Thu, 17 Aug 2017 21:30:19 +0000 (21:30 +0000)]
Merge "simpleperf: fix inferno and test content of report.html."

6 years agoMerge "simpleperf: add run_simpleperf_on_device.py."
Yabin Cui [Thu, 17 Aug 2017 21:28:05 +0000 (21:28 +0000)]
Merge "simpleperf: add run_simpleperf_on_device.py."

6 years agoMerge "simpleperf: fix building simpleperf_script.zip."
Yabin Cui [Thu, 17 Aug 2017 21:27:38 +0000 (21:27 +0000)]
Merge "simpleperf: fix building simpleperf_script.zip."

6 years agoMerge "simpleperf: update simpleperf prebuilts to build 4282339."
Yabin Cui [Thu, 17 Aug 2017 21:04:13 +0000 (21:04 +0000)]
Merge "simpleperf: update simpleperf prebuilts to build 4282339."
am: 24bd27006a

Change-Id: I5e36c3fbaac216141ac5b80543ca1814583c79b7

6 years agoMerge "simpleperf: update simpleperf prebuilts to build 4282339."
Yabin Cui [Thu, 17 Aug 2017 20:59:04 +0000 (20:59 +0000)]
Merge "simpleperf: update simpleperf prebuilts to build 4282339."

6 years agosimpleperf: add run_simpleperf_on_device.py.
Yabin Cui [Fri, 11 Aug 2017 23:22:50 +0000 (16:22 -0700)]
simpleperf: add run_simpleperf_on_device.py.

It is added mainly to show in README.md how to detect whether
trace-offcpu is supported on device, by
 `python run_simpleperf_on_device.py list --show-features`.

Bug: http://b/32834638
Test: run test.py.
Change-Id: I33a6fb81b650293faec233eb6a735bac7cb5e215

6 years agosimpleperf: update simpleperf prebuilts to build 4282339.
Yabin Cui [Thu, 17 Aug 2017 19:30:32 +0000 (12:30 -0700)]
simpleperf: update simpleperf prebuilts to build 4282339.

Taken from branch aosp-master.
Bug: None
Test: None

Change-Id: I9349e8e646b2b7c999c7f540fd1f0d346ff15889

6 years agosimpleperf: fix building simpleperf_script.zip.
Yabin Cui [Mon, 14 Aug 2017 19:24:15 +0000 (12:24 -0700)]
simpleperf: fix building simpleperf_script.zip.

The previous way of building simpleperf_script.zip uses "../" in zip file
makes unzip complain. So remove "../" by moving the makefile to the parent
directory.

Also include inferno in simpleperf_script.zip.

Bug: http://b/64035530
Test: run `make sdk -j30`.
Change-Id: Ic4359c5cf68e1475a605d58883a2451ca43bbe24

6 years agosimpleperf: fix inferno and test content of report.html.
Yabin Cui [Mon, 14 Aug 2017 23:35:10 +0000 (16:35 -0700)]
simpleperf: fix inferno and test content of report.html.

Inferno uses sample count to decide the width of each method,
but this is not accurate. Fix it by using event count instead.

Besides that, refactor inferno.py a little, get record cmd
and device info from perf.data, and test content of report.html
generated by inferno.

Also fix a flakey test TestExamplePureJava.test_app_profiler_with_ctrl_c.

Bug: http://b/64035530
Test: run test.py.
Change-Id: Ia57fcbd28b4242b4251b063bd38a58da7b93eba0

6 years agoMerge "simpleperf: export more info through report_lib_interface."
Yabin Cui [Mon, 14 Aug 2017 20:57:44 +0000 (20:57 +0000)]
Merge "simpleperf: export more info through report_lib_interface."
am: 78b3cc8387

Change-Id: I4a0081b2b56b8ebc20529fd71d6e4ebeb8329712

6 years agoMerge "simpleperf: export more info through report_lib_interface."
Yabin Cui [Mon, 14 Aug 2017 20:51:47 +0000 (20:51 +0000)]
Merge "simpleperf: export more info through report_lib_interface."

6 years agoMerge "simpleperf: format inferno code."
Yabin Cui [Mon, 14 Aug 2017 19:30:40 +0000 (19:30 +0000)]
Merge "simpleperf: format inferno code."
am: 504d653008

Change-Id: I3fb3ca1ca306e58bfb720eadd12e0f6659c88b9d

6 years agoMerge "simpleperf: format inferno code."
Yabin Cui [Mon, 14 Aug 2017 19:21:13 +0000 (19:21 +0000)]
Merge "simpleperf: format inferno code."

6 years agoMerge "simpleperf: fix link of README.md."
Yabin Cui [Mon, 14 Aug 2017 18:17:34 +0000 (18:17 +0000)]
Merge "simpleperf: fix link of README.md."
am: e96387ab5e

Change-Id: I10da85da18156e0b50ebeff275df6eb3d4803e21

6 years agoMerge "simpleperf: fix link of README.md."
Yabin Cui [Mon, 14 Aug 2017 18:12:45 +0000 (18:12 +0000)]
Merge "simpleperf: fix link of README.md."

6 years agosimpleperf: export more info through report_lib_interface.
Yabin Cui [Fri, 11 Aug 2017 21:52:51 +0000 (14:52 -0700)]
simpleperf: export more info through report_lib_interface.

Make below changes to better suppport inferno:
1. Save product properties of device in perf.data.

2. Add a python/c api GetFeatureSection. It is used to support
reading record cmd and meta info from perf.data.

3. Remove old api GetNextMetaInfo, because meta info can be
exported by GetFeatureSection more easily.

4. When reading perf.data in record_file_reader.cpp, remove
callchain at and below ip == 0 to avoid caller's effort.

Also move to use android-base/properties.h.

Bug: http://b/64035530
Test: run simpleperf_unit_test and test.py.
Change-Id: Ib6743a09167e2b7cd65a12f17d991bc1ac628588

6 years agosimpleperf: fix link of README.md.
Yabin Cui [Mon, 14 Aug 2017 17:41:20 +0000 (10:41 -0700)]
simpleperf: fix link of README.md.

Bug: None
Test: None
Change-Id: If06288b0b5b2b2ec20a7fc4f930c5ca3d0198978

6 years agoMerge "simpleperf: improve warning msg."
Yabin Cui [Mon, 14 Aug 2017 17:22:59 +0000 (17:22 +0000)]
Merge "simpleperf: improve warning msg."
am: 668f19e1a9

Change-Id: I6c122f13e6bd8dcd2f3d7c93c9e8a1f65381bfd0

6 years agoMerge "simpleperf: improve warning msg."
Yabin Cui [Mon, 14 Aug 2017 17:19:53 +0000 (17:19 +0000)]
Merge "simpleperf: improve warning msg."

6 years agosimpleperf: improve warning msg.
Yabin Cui [Sat, 12 Aug 2017 00:03:07 +0000 (17:03 -0700)]
simpleperf: improve warning msg.

The warning of missing symbol for each lib is shown twice,
once in recording, and once in reporting. This is redundant and
maybe misleading. Because when reporting we actually don't know
if we have collected enough symbols in perf.data. So move warning
of missing symbols to debug info if we have symbols in perf.data.

Use customized StderrLogger, because simpleperf doesn't need
time,pid,tid information in log.

Bug: http://b/29574526
Test: run simpleperf manually and run simpleperf_unit_test.
Change-Id: I9baf6d8fdcd63907681f2daa45b8fad6bf7e2516

6 years agosimpleperf: format inferno code.
Yabin Cui [Fri, 11 Aug 2017 22:49:36 +0000 (15:49 -0700)]
simpleperf: format inferno code.

Format python code using autopep8.
Change Javascript code to ES6, and format it using eslint.

Bug: http://b/64035530
Test: run inferno.
Change-Id: I8b3553bf49423275da8eb3ad6fe3d8bb8dcf0a5b

6 years agoMerge "simpleperf: use app_profiler.py in inferno."
Yabin Cui [Thu, 10 Aug 2017 17:59:33 +0000 (17:59 +0000)]
Merge "simpleperf: use app_profiler.py in inferno."
am: c2adeafb3c

Change-Id: I8c4566f13540c115cd61fe35627ce57802bde9ca

6 years agoMerge "simpleperf: use app_profiler.py in inferno."
Yabin Cui [Thu, 10 Aug 2017 17:49:12 +0000 (17:49 +0000)]
Merge "simpleperf: use app_profiler.py in inferno."

6 years agoMerge "simpleperf: fix stat cmd."
Yabin Cui [Wed, 9 Aug 2017 01:14:35 +0000 (01:14 +0000)]
Merge "simpleperf: fix stat cmd."
am: 45da8349f7

Change-Id: I4b659d142223167041058e4b91399d1010b7854e

6 years agoMerge "simpleperf: fix stat cmd."
Treehugger Robot [Wed, 9 Aug 2017 01:00:49 +0000 (01:00 +0000)]
Merge "simpleperf: fix stat cmd."

6 years agoMerge "simpleperf: add --exit-with-parent option in record cmd."
Yabin Cui [Tue, 8 Aug 2017 23:45:51 +0000 (23:45 +0000)]
Merge "simpleperf: add --exit-with-parent option in record cmd."
am: d51b849069

Change-Id: I90867cfa7195d8bc60b0c898df3d841c75610f7a

6 years agoMerge "simpleperf: add --exit-with-parent option in record cmd."
Yabin Cui [Tue, 8 Aug 2017 23:30:21 +0000 (23:30 +0000)]
Merge "simpleperf: add --exit-with-parent option in record cmd."

6 years agosimpleperf: fix stat cmd.
Yabin Cui [Tue, 8 Aug 2017 22:44:33 +0000 (15:44 -0700)]
simpleperf: fix stat cmd.

Previous CL wrongly makes kernel dump samples for stat cmd.

Bug: http://b/64489160
Test: run simpleperf_unit_test.
Change-Id: I4f5c08839e283b2361e47d61310e5161433824bb

6 years agosimpleperf: add --exit-with-parent option in record cmd.
Yabin Cui [Tue, 8 Aug 2017 19:29:04 +0000 (12:29 -0700)]
simpleperf: add --exit-with-parent option in record cmd.

This makes it optional whether simpleperf stops recording
when the parent dies.

Bug: http://b/64391339
Test: run simpleperf_unit_test.
Change-Id: I0827a17d6fedbb9763347df76da9dc981fea6312

6 years agosimpleperf: use app_profiler.py in inferno.
Yabin Cui [Tue, 8 Aug 2017 00:53:33 +0000 (17:53 -0700)]
simpleperf: use app_profiler.py in inferno.

Also add tests to check if we can run inferno successfully.
More tests will be added to check report results of inferno.

Bug: http://b/64035530
Test: run test.py.
Change-Id: Ie5dd1f5cb47c8c7a2ae68f8614cf81b68e3c7dbf

6 years agoMerge "simpleperf: allow recording events in different speed."
Yabin Cui [Mon, 7 Aug 2017 23:18:49 +0000 (23:18 +0000)]
Merge "simpleperf: allow recording events in different speed."
am: f9ed7b5507

Change-Id: Ia1eaafc0c7b825289014ebe362f4419957f934ec

6 years agoMerge "Fix fd ownership issue in PrintNativeInfo/GetNativeInfo."
Elliott Hughes [Mon, 7 Aug 2017 23:18:37 +0000 (23:18 +0000)]
Merge "Fix fd ownership issue in PrintNativeInfo/GetNativeInfo."
am: 6278bc9fd8

Change-Id: I4d20cf4891f041c323af90f2a92c63337606eeb9

6 years agoMerge "simpleperf: allow recording events in different speed."
Yabin Cui [Mon, 7 Aug 2017 23:11:34 +0000 (23:11 +0000)]
Merge "simpleperf: allow recording events in different speed."

6 years agoMerge "Fix fd ownership issue in PrintNativeInfo/GetNativeInfo."
Elliott Hughes [Mon, 7 Aug 2017 23:09:48 +0000 (23:09 +0000)]
Merge "Fix fd ownership issue in PrintNativeInfo/GetNativeInfo."

6 years agosimpleperf: allow recording events in different speed.
Yabin Cui [Thu, 3 Aug 2017 22:54:43 +0000 (15:54 -0700)]
simpleperf: allow recording events in different speed.

Currently record command interface only allows one sample freq or sample period
for all events. This is not convenient when recording both non tracepoint events
and tracepoint events. This CL allows setting different sample speed for
different events. For example, for "-f 1000 -e cpu-cycles -c 1 sched:sched_switch",
"-f 1000" applies to cpu-cycles, and "-c 1" applies to sched:sched_switch.

It also fixes a bug about trace-offcpu: if "-f 1000 --trace-offcpu" is used,
the sched:sched_switch is be samples with "-f 1000". But we want to sample it
with "-c 1".

Also change the order of options in the help msg of record cmd to make it more
readable. Remove -F option. Because adding it seems not useful.

Bug: http://b/37572306
Test: run simpleperf_unit_test.

Change-Id: Ifdbd27c8f9fec49aade0e0e6ce624d8114042020

6 years agoFix fd ownership issue in PrintNativeInfo/GetNativeInfo.
Elliott Hughes [Mon, 7 Aug 2017 16:30:37 +0000 (09:30 -0700)]
Fix fd ownership issue in PrintNativeInfo/GetNativeInfo.

Bug: N/A
Test: ran tests
Change-Id: I10bdeeb38404583560685bf47c58f6770fc9050b
Signed-off-by: Ivan Maidanski <i.maidanski@samsung.com>
6 years agoMerge "simpleperf: support profiling native programs in app_profiler.py."
Yabin Cui [Fri, 4 Aug 2017 18:07:36 +0000 (18:07 +0000)]
Merge "simpleperf: support profiling native programs in app_profiler.py."
am: 51bdff6ccb

Change-Id: I12717142bd37241bbb7ca3c27b4122b74c316dce

6 years agoMerge "simpleperf: export meta info in report_sample.proto."
Yabin Cui [Fri, 4 Aug 2017 18:07:19 +0000 (18:07 +0000)]
Merge "simpleperf: export meta info in report_sample.proto."
am: 312cbae4fa

Change-Id: I4000bd49bf50a2a8314087a1dbaa2740ab9837be

6 years agoMerge "simpleperf: support profiling native programs in app_profiler.py."
Yabin Cui [Fri, 4 Aug 2017 17:54:42 +0000 (17:54 +0000)]
Merge "simpleperf: support profiling native programs in app_profiler.py."

6 years agoMerge "simpleperf: export meta info in report_sample.proto."
Yabin Cui [Fri, 4 Aug 2017 17:53:53 +0000 (17:53 +0000)]
Merge "simpleperf: export meta info in report_sample.proto."

6 years agoMerge "Fix clang-tidy performance-* warnings in system/extras."
Chih-Hung Hsieh [Thu, 3 Aug 2017 23:12:03 +0000 (23:12 +0000)]
Merge "Fix clang-tidy performance-* warnings in system/extras."
am: a386d2168e

Change-Id: I0c63d2b7c1316b00c60d02faf2c08f77283ae4aa

6 years agosimpleperf: export meta info in report_sample.proto.
Yabin Cui [Mon, 31 Jul 2017 22:08:27 +0000 (15:08 -0700)]
simpleperf: export meta info in report_sample.proto.

To support perf.data generated with --trace-offcpu option,
update interface in report_sample.proto:
1. Add meta info to show all event types.
2. Add event_type_id in each sample to show which even type it belongs to.

Bug: http://b/37572306
Test: run simpleperf_unit_test.
Change-Id: I2878979ec2023904df1006ce353dcf233b6a2642

6 years agoMerge "Fix clang-tidy performance-* warnings in system/extras."
Treehugger Robot [Thu, 3 Aug 2017 23:03:13 +0000 (23:03 +0000)]
Merge "Fix clang-tidy performance-* warnings in system/extras."

6 years agosimpleperf: support profiling native programs in app_profiler.py.
Yabin Cui [Wed, 2 Aug 2017 18:55:04 +0000 (11:55 -0700)]
simpleperf: support profiling native programs in app_profiler.py.

This is a preparation of using app_profiler.py in inferno.

In app_profiler.py:
Add -np option to profile native programs like surfaceflinger.
Add -cmd option to profile command lines.
Add --arch option to set the app arch, because we don't guess the app arch
when profiling command lines.
Add corresponding tests in test.py.

Also improve the way of detecting whether the device supports trace-offcpu.

Bug: http://b/63006886
Test: run test.py.

Change-Id: Id899063d9a94beec67b22fd7710cda7a438557fb

6 years agoFix clang-tidy performance-* warnings in system/extras.
Chih-Hung Hsieh [Thu, 3 Aug 2017 21:04:06 +0000 (14:04 -0700)]
Fix clang-tidy performance-* warnings in system/extras.

* Use const reference parameter type to avoid unnecessary copy.
* Use more efficient overloaded string methods.

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

6 years agoMerge "simpleperf: fix supporting ctrl-c when using `adb shell simpleperf xxx`."
Yabin Cui [Thu, 3 Aug 2017 03:29:16 +0000 (03:29 +0000)]
Merge "simpleperf: fix supporting ctrl-c when using `adb shell simpleperf xxx`."
am: b3734fda74

Change-Id: I89b8b5f864306487cbb6ca35d1adb657a0385199

6 years agoMerge "simpleperf: fix supporting ctrl-c when using `adb shell simpleperf xxx`."
Treehugger Robot [Thu, 3 Aug 2017 03:20:31 +0000 (03:20 +0000)]
Merge "simpleperf: fix supporting ctrl-c when using `adb shell simpleperf xxx`."

6 years agosimpleperf: fix supporting ctrl-c when using `adb shell simpleperf xxx`.
Yabin Cui [Wed, 2 Aug 2017 21:00:01 +0000 (14:00 -0700)]
simpleperf: fix supporting ctrl-c when using `adb shell simpleperf xxx`.

Also fix a problem that binary_cache_builder.py tries to pull /dev/zero.

Bug: None.
Test: run test.py TestExamplePureJava.test_app_profiler_with_ctrl_c.
Change-Id: Ie99af6795bb1e81ae6e93f8b7a8907d49c048694