Tom Cherry
cda81d01c6
am 54c70ca1
: Merge "init: Use classes for parsing and clean up memory allocations"
...
* commit '54c70ca15660529466b5b4e091209a20a3e75dff':
init: Use classes for parsing and clean up memory allocations
2015-09-01 21:42:01 +00:00
Tom Cherry
b7349902a9
init: Use classes for parsing and clean up memory allocations
...
Create a Parser class that uses multiple SectionParser interfaces to
handle parsing the different sections of an init rc.
Create an ActionParser and ServiceParser that implement SectionParser
and parse the sections corresponding to Action and Service
classes.
Remove the legacy keyword structure and replace it with std::map's
that map keyword -> (minimum args, maximum args, function pointer) for
Commands and Service Options.
Create an ImportParser that implements SectionParser and handles the
import 'section'.
Clean up the unsafe memory handling of the Action class by using
std::unique_ptr.
Change-Id: Ic5ea5510cb956dbc3f78745a35096ca7d6da7085
2015-09-01 12:26:02 -07:00
Tom Cherry
25c22bb9e7
am 08a6775f
: am 2d8be6c2
: Merge "init: import init rc scripts from file systems after mount_all"
...
* commit '08a6775f8cdadf48e7b5f4f4d710180fda43b2b6':
init: import init rc scripts from file systems after mount_all
2015-08-21 21:47:03 +00:00
Tom Cherry
d64bf33890
am 08a6775f
: am 2d8be6c2
: Merge "init: import init rc scripts from file systems after mount_all"
...
* commit '08a6775f8cdadf48e7b5f4f4d710180fda43b2b6':
init: import init rc scripts from file systems after mount_all
2015-08-21 21:44:37 +00:00
Tom Cherry
c7676b5037
am 54b22ca2
: am ff5be396
: Merge changes from topic \'init-rc-breakup\'
...
* commit '54b22ca2488e4901265c99a42b5c5e0725a99199':
init: Queue Triggers instead of Actions
bundle init.rc contents with its service
2015-08-21 18:24:18 +00:00
Tom Cherry
60eb73ed6a
am 54b22ca2
: am ff5be396
: Merge changes from topic \'init-rc-breakup\'
...
* commit '54b22ca2488e4901265c99a42b5c5e0725a99199':
init: Queue Triggers instead of Actions
bundle init.rc contents with its service
2015-08-21 18:20:22 +00:00
Tom Cherry
b8dd0272e5
init: import init rc scripts from file systems after mount_all
...
Import /{system,vendor,odm}/etc/init/... after file systems are mounted
Bug: 23186545
Change-Id: Idb0cae9773f904c0330054c8b3e31eb87b2fb7cb
2015-08-21 10:14:43 -07:00
Tom Cherry
cb716f976b
init: Queue Triggers instead of Actions
...
When init queues a trigger, it actually enqueues all of the Actions
that match with that given trigger. This works currently because
all init scripts are loaded and therefore all Actions are available
before init starts queueing any triggers.
To support loading init scripts after init has started queueing
triggers, this change enqueues Trigger objects instead of their
matching Actions. Each Trigger object then matches its associated
Actions during its execution.
Additionally, this makes a few cosmetic clean ups related to triggers.
Bug: 23186545
Change-Id: I5d177458e6df1c4b32b1072cf77e87ef952c87e4
2015-08-21 10:14:43 -07:00
Yusuke Sato
2ef82cffad
am d1b11a04
: am e656be33
: Merge "Add |opts| argument to android_fork_execvp_ext"
...
* commit 'd1b11a04903be74ba6a47307d8c3ef2731e3f4ab':
Add |opts| argument to android_fork_execvp_ext
2015-08-19 22:31:08 +00:00
Yusuke Sato
9962b04d00
am d1b11a04
: am e656be33
: Merge "Add |opts| argument to android_fork_execvp_ext"
...
* commit 'd1b11a04903be74ba6a47307d8c3ef2731e3f4ab':
Add |opts| argument to android_fork_execvp_ext
2015-08-19 22:20:29 +00:00
Yusuke Sato
d81c3c6c45
Add |opts| argument to android_fork_execvp_ext
...
to allow the caller to send data to the child's stdin.
Bug: 21725996
Change-Id: I818f5cf61045286c8d64a91b6d50f05740329be1
2015-08-19 11:00:37 -07:00
Yusuke Sato
c52f66b548
am 885400fd
: am 4d09db9d
: Merge "perfboot.py: Add --end-tag option"
...
* commit '885400fdbabf9850bd680725c591cc00f2aa71fe':
perfboot.py: Add --end-tag option
2015-08-18 05:55:34 +00:00
Yusuke Sato
8e9a1ae593
am 885400fd
: am 4d09db9d
: Merge "perfboot.py: Add --end-tag option"
...
* commit '885400fdbabf9850bd680725c591cc00f2aa71fe':
perfboot.py: Add --end-tag option
2015-08-18 05:55:28 +00:00
Yusuke Sato
3966ebb74d
perfboot.py: Add --end-tag option
...
The current behavior, which is to use tags[-1] for end_tag, is good
enough in most cases, but sometime it makes more sense to use a
different one as end_tag.
For example, when optimizing APK scanning code in package manager,
using 'boot_progress_pms_scan_end' as end_tag would give us quicker
benchmark iterations as well as more relevant numbers possibly with
a smaller standard deviation.
Change-Id: Ic6371c936b36d1d87e9742502fd8958682a3b7d5
2015-08-17 22:07:34 -07:00
Nick Kralevich
d717f86a3e
am 64c30a79
: am 084c00b8
: Merge "init: add LOCAL_SANITIZE := integer"
...
* commit '64c30a79def4dc29749a86c00a970243a2a45f1e':
init: add LOCAL_SANITIZE := integer
2015-08-17 01:15:17 +00:00
Nick Kralevich
d7f0a73f8d
am 64c30a79
: am 084c00b8
: Merge "init: add LOCAL_SANITIZE := integer"
...
* commit '64c30a79def4dc29749a86c00a970243a2a45f1e':
init: add LOCAL_SANITIZE := integer
2015-08-17 01:15:05 +00:00
Nick Kralevich
084c00b804
Merge "init: add LOCAL_SANITIZE := integer"
2015-08-16 15:37:35 +00:00
Nick Kralevich
f90b653667
init: add LOCAL_SANITIZE := integer
...
Call abort() on undefined or sketchy integer behavior.
Protects against integer overflow attacks.
Change-Id: If73e6b382f2ee645fec406805739f9684ddbb5f0
2015-08-15 15:24:23 +00:00
Nick Kralevich
38887c50c1
am 51ffedd2
: am 1efef4c4
: Merge "Revert "init: add LOCAL_SANITIZE := integer""
...
* commit '51ffedd264389730a76470408a122589f7ce3488':
Revert "init: add LOCAL_SANITIZE := integer"
2015-08-13 18:27:42 +00:00
Nick Kralevich
1deb03179c
am 51ffedd2
: am 1efef4c4
: Merge "Revert "init: add LOCAL_SANITIZE := integer""
...
* commit '51ffedd264389730a76470408a122589f7ce3488':
Revert "init: add LOCAL_SANITIZE := integer"
2015-08-13 18:27:36 +00:00
Nick Kralevich
1efef4c49d
Merge "Revert "init: add LOCAL_SANITIZE := integer""
2015-08-13 18:15:11 +00:00
Nick Kralevich
c307b5b7f8
Revert "init: add LOCAL_SANITIZE := integer"
...
flounder isn't booting
This reverts commit aea73db1e3
.
Bug: 23166814
Change-Id: I36c811d1ca30e2366066142d9282bb713dae315f
2015-08-13 18:10:50 +00:00
Nick Kralevich
864d4985ed
am 4d74f2cb
: am 0b973da5
: Merge "init: add LOCAL_SANITIZE := integer"
...
* commit '4d74f2cb4c30aaf4dfd176b2f970dbf54e5c697d':
init: add LOCAL_SANITIZE := integer
2015-08-12 19:22:11 +00:00
Nick Kralevich
9ec6fcfe09
am 4d74f2cb
: am 0b973da5
: Merge "init: add LOCAL_SANITIZE := integer"
...
* commit '4d74f2cb4c30aaf4dfd176b2f970dbf54e5c697d':
init: add LOCAL_SANITIZE := integer
2015-08-12 19:21:58 +00:00
Nick Kralevich
0b973da532
Merge "init: add LOCAL_SANITIZE := integer"
2015-08-12 19:09:58 +00:00
Dan Albert
68ff9f2ca2
am e78292f2
: am cef3508b
: Merge "Add missing includes."
...
* commit 'e78292f2c5a1cffd9fdcb76e5be29f6d14445b93':
Add missing includes.
2015-08-12 02:11:05 +00:00
Dan Albert
97a8cd957f
am e78292f2
: am cef3508b
: Merge "Add missing includes."
...
* commit 'e78292f2c5a1cffd9fdcb76e5be29f6d14445b93':
Add missing includes.
2015-08-12 02:10:16 +00:00
Dan Albert
cef3508bb6
Merge "Add missing includes."
2015-08-12 01:50:15 +00:00
Nick Kralevich
aea73db1e3
init: add LOCAL_SANITIZE := integer
...
Call abort() on undefined or sketchy integer behavior.
Protects against integer overflow attacks.
Change-Id: I5f542089753c8fcf7596fd70cfaa48a3caa5b140
2015-08-11 16:55:56 -07:00
Dan Albert
af9ba4dc6c
Add missing includes.
...
Leaky header cleanup in libc++ means we don't get unistd.h
transitively any more.
Change-Id: I596c24eff418302b19afab6ad3caa55f52241e7c
2015-08-11 16:39:57 -07:00
Tom Cherry
9b005a328b
am ba0f24c7
: am 5573e3d8
: Merge "init: replace strdup() in parse_config()"
...
* commit 'ba0f24c71767365ff730b763b9af257bad462809':
init: replace strdup() in parse_config()
2015-08-11 21:05:59 +00:00
Tom Cherry
12e77877e6
am ba0f24c7
: am 5573e3d8
: Merge "init: replace strdup() in parse_config()"
...
* commit 'ba0f24c71767365ff730b763b9af257bad462809':
init: replace strdup() in parse_config()
2015-08-11 21:05:53 +00:00
Tom Cherry
4ad60fbae5
init: replace strdup() in parse_config()
...
Previously, the action, command, and service structs contained char*s
that referenced memory within the buffer returned by the strdup() of
the input buffer of parse_config. This prevented this entire memory
region from being freed, leaking contents that would never be referenced again.
The changes to convert the previous action, command, and service
structs to C++ classes created explicit ownership of the contents within
each class in the form of std::strings. With these changes, there are
no remaining references to the memory allocated by this strdup(), which
can now be freed.
This commit replaces the strdup() with std::vector<char> to allow for
the copied string to be freed when it goes out of scope instead of
relying on the C strdup() and free() functions.
Change-Id: Id0a5f711e33363082ba201afda6b26043998cb1c
2015-08-10 14:26:03 -07:00
Tom Cherry
841066e778
am 4036f5ab
: am 4bf3dc93
: Merge "Create Service and ServiceManager classes"
...
* commit '4036f5ab2ffbe5a2e47d46aa376e9791385cc31b':
Create Service and ServiceManager classes
2015-08-07 21:17:02 +00:00
Tom Cherry
2647d2e70e
am 4036f5ab
: am 4bf3dc93
: Merge "Create Service and ServiceManager classes"
...
* commit '4036f5ab2ffbe5a2e47d46aa376e9791385cc31b':
Create Service and ServiceManager classes
2015-08-07 21:13:04 +00:00
Tom Cherry
4bf3dc9345
Merge "Create Service and ServiceManager classes"
2015-08-07 19:29:58 +00:00
Tom Cherry
bac3299720
Create Service and ServiceManager classes
...
Change-Id: I363a5e4751ad83d2f4096882a6fbbeddca03acfe
2015-08-07 10:16:39 -07:00
Yasuhiro Matsuda
39ac947939
am b84e1f54
: am 50de8224
: Merge "Enable perfboot.py to install APKs before measurement."
...
* commit 'b84e1f540379c6af9ccfc22e779b67f67b8c210a':
Enable perfboot.py to install APKs before measurement.
2015-08-06 12:40:27 +00:00
Yasuhiro Matsuda
fb35b7c463
am 9e2ed7b0
: am 7f2e05e9
: Merge "Fix incorrect exception handling in perfboot.py"
...
* commit '9e2ed7b080bbe0f01fb82d77b30f6d1df372490a':
Fix incorrect exception handling in perfboot.py
2015-08-06 12:40:26 +00:00
Yasuhiro Matsuda
a25e258d65
am b84e1f54
: am 50de8224
: Merge "Enable perfboot.py to install APKs before measurement."
...
* commit 'b84e1f540379c6af9ccfc22e779b67f67b8c210a':
Enable perfboot.py to install APKs before measurement.
2015-08-06 12:40:24 +00:00
Yasuhiro Matsuda
93e060e115
am 9e2ed7b0
: am 7f2e05e9
: Merge "Fix incorrect exception handling in perfboot.py"
...
* commit '9e2ed7b080bbe0f01fb82d77b30f6d1df372490a':
Fix incorrect exception handling in perfboot.py
2015-08-06 12:40:22 +00:00
Yasuhiro Matsuda
50de8224a6
Merge "Enable perfboot.py to install APKs before measurement."
2015-08-06 03:55:04 +00:00
Yasuhiro Matsuda
c0822e83ad
Enable perfboot.py to install APKs before measurement.
...
This CL adds --apk-dir option, which specifies the directory
that contains APK files to be installed before measuring
boot time.
BUG: 22207911
Change-Id: Ifeacf34c779248686443a9ef02485272c140a456
2015-08-06 11:02:17 +09:00
Yasuhiro Matsuda
f3d0d42f1a
Fix incorrect exception handling in perfboot.py
...
RuntimeError used to be missed unintentionally.
BUG: 22207911
Change-Id: I69772350c22fac93d49745c3bc934dda7188bb77
2015-08-05 20:26:03 +09:00
Yasuhiro Matsuda
fdb80810a2
am ee640552
: am 1ada513f
: Merge "Fix perfboot.py to exit by Ctrl+C."
...
* commit 'ee6405527f11010e09a72c4eaf2c47bac170c49c':
Fix perfboot.py to exit by Ctrl+C.
2015-08-05 02:41:02 +00:00
Yasuhiro Matsuda
75c09ba367
am ee640552
: am 1ada513f
: Merge "Fix perfboot.py to exit by Ctrl+C."
...
* commit 'ee6405527f11010e09a72c4eaf2c47bac170c49c':
Fix perfboot.py to exit by Ctrl+C.
2015-08-05 02:39:00 +00:00
Yasuhiro Matsuda
1ada513f50
Merge "Fix perfboot.py to exit by Ctrl+C."
2015-08-05 02:26:27 +00:00
Yusuke Sato
056b97d509
am b57438c8
: am e4154f46
: Merge "perfboot.py: check 2 more event logs by default"
...
* commit 'b57438c848e377873aefd89f68afb7650a6043e9':
perfboot.py: check 2 more event logs by default
2015-08-04 21:06:58 +00:00
Yusuke Sato
ba48c3f64a
am b57438c8
: am e4154f46
: Merge "perfboot.py: check 2 more event logs by default"
...
* commit 'b57438c848e377873aefd89f68afb7650a6043e9':
perfboot.py: check 2 more event logs by default
2015-08-04 21:05:59 +00:00
Yusuke Sato
43c4d998cf
perfboot.py: check 2 more event logs by default
...
'sf_stop_bootanim' is useful for tracking the time wasted by
showing the 'outro' part of the boot animation.
'wm_boot_animation_done' is also useful for tracking user
perceived boot time.
(cherry-pick of cbcf2778c3
)
Bug: 22207911
Change-Id: I3549338a2161fa29675993c239f57809270797f8
2015-08-04 12:06:36 -07:00
Yasuhiro Matsuda
59d32a7515
Fix perfboot.py to exit by Ctrl+C.
...
BUG: 22207911
Change-Id: I0cc41f834207efd2965483c8636bbc709e54358f
2015-08-04 17:48:41 +09:00
Yusuke Sato
9358ae91c9
am 69386e33
: am 81fd50c3
: Merge "perfboot.py: ignore tags not listed in /system/etc/event-log-tags"
...
* commit '69386e33b67eaee721b4e8d7bddbd4263302ff77':
perfboot.py: ignore tags not listed in /system/etc/event-log-tags
2015-08-04 00:28:56 +00:00
Yusuke Sato
0ef97729c2
am 69386e33
: am 81fd50c3
: Merge "perfboot.py: ignore tags not listed in /system/etc/event-log-tags"
...
* commit '69386e33b67eaee721b4e8d7bddbd4263302ff77':
perfboot.py: ignore tags not listed in /system/etc/event-log-tags
2015-08-04 00:28:44 +00:00
Yusuke Sato
e801cc0b4e
perfboot.py: ignore tags not listed in /system/etc/event-log-tags
...
This is a follow-up CL for http://ag/739815/ .
Bug: 22207911
Change-Id: Ie5f529abc4b18454cea8a75a1438a5ea65dd90ab
2015-08-03 15:56:53 -07:00
Yusuke Sato
f2a404b1f3
am 5e34b3ab
: am 72488aa0
: Merge "perfboot.py: warn if dm-verity is disabled"
...
* commit '5e34b3abdb3cbc167fa86dab7a746c94f2bd4c6f':
perfboot.py: warn if dm-verity is disabled
2015-08-03 21:47:13 +00:00
Tom Cherry
087cd35b79
resolved conflicts for merge of 0070026c
to mnc-dr-dev-plus-aosp
...
Change-Id: Ibc802572898b6913c1f5d94aaae19974bfc0eb85
2015-08-03 14:19:35 -07:00
Yusuke Sato
48f2879729
am 5e34b3ab
: am 72488aa0
: Merge "perfboot.py: warn if dm-verity is disabled"
...
* commit '5e34b3abdb3cbc167fa86dab7a746c94f2bd4c6f':
perfboot.py: warn if dm-verity is disabled
2015-08-03 20:42:04 +00:00
Yusuke Sato
72488aa0fe
Merge "perfboot.py: warn if dm-verity is disabled"
2015-08-03 20:26:47 +00:00
Yusuke Sato
b6c66dc0a3
perfboot.py: warn if dm-verity is disabled
...
Disabling the feature sometimes skews benchmark results.
Bug: 22207911
Change-Id: Idedc7eb14e3cc4e8687b0c0e2975f10a3c4154e5
2015-08-03 11:36:21 -07:00
Tom Cherry
b6545bf559
am 0070026c
: am 4247ebfd
: Merge "init: use std::vector<std::string> for argument passing"
...
* commit '0070026c1b87facf626042e8ba1e36877129af76':
init: use std::vector<std::string> for argument passing
2015-08-03 18:11:16 +00:00
Yusuke Sato
adda8f7388
am 2f9e1db3
: am b5d6ad81
: Merge "Stop calling fsck on shutdown by default"
...
* commit '2f9e1db37416cdb580d870218b5fbfbed47a3758':
Stop calling fsck on shutdown by default
2015-08-03 17:56:32 +00:00
Tom Cherry
4247ebfd2f
Merge "init: use std::vector<std::string> for argument passing"
2015-08-03 17:51:39 +00:00
Lee Campbell
2fb050b893
am 150c05fe
: am 0f918878
: Merge "init: Adding header guard to tokenizer"
...
* commit '150c05feeb482de2b4026fc35e392fc8c0ecd2df':
init: Adding header guard to tokenizer
2015-08-01 15:48:39 +00:00
Yusuke Sato
23ec3e468b
am 2f9e1db3
: am b5d6ad81
: Merge "Stop calling fsck on shutdown by default"
...
* commit '2f9e1db37416cdb580d870218b5fbfbed47a3758':
Stop calling fsck on shutdown by default
2015-07-31 23:30:07 +00:00
Yusuke Sato
b5d6ad81cb
Merge "Stop calling fsck on shutdown by default"
2015-07-31 23:13:15 +00:00
Tom Cherry
96f67316a2
init: use std::vector<std::string> for argument passing
...
Change-Id: Ie7a64e65de3a20d0c7f7d8efc0f7c1ba121d07fe
2015-07-31 16:02:12 -07:00
Lee Campbell
7ff4bb7e47
am 150c05fe
: am 0f918878
: Merge "init: Adding header guard to tokenizer"
...
* commit '150c05feeb482de2b4026fc35e392fc8c0ecd2df':
init: Adding header guard to tokenizer
2015-07-31 22:32:02 +00:00
Lee Campbell
06584400dd
init: Adding header guard to tokenizer
...
Fixing missing header guard
BUG: 22843198
Change-Id: Ice5d29d343ffe093aae46d4ac3fd72de628fb12e
2015-07-30 18:48:50 -07:00
Tom Cherry
7da270df1d
am a21d8562
: am d548e30f
: Merge "init: Create classes for Action and Command"
...
* commit 'a21d85620560896bbed0cd43db9ed3224ab4e974':
init: Create classes for Action and Command
2015-07-30 21:31:38 +00:00
Tom Cherry
97d393bb2d
am a21d8562
: am d548e30f
: Merge "init: Create classes for Action and Command"
...
* commit 'a21d85620560896bbed0cd43db9ed3224ab4e974':
init: Create classes for Action and Command
2015-07-30 21:23:00 +00:00
Tom Cherry
d548e30f04
Merge "init: Create classes for Action and Command"
2015-07-30 21:03:48 +00:00
Lee Campbell
45bd7bcf37
am 1691d968
: am 138c540f
: Merge "init: Add C++ tokenizer."
...
* commit '1691d968f8ae5f25036251fd5978be637bbf0b4a':
init: Add C++ tokenizer.
2015-07-30 20:45:25 +00:00
Lee Campbell
7158521377
am 1691d968
: am 138c540f
: Merge "init: Add C++ tokenizer."
...
* commit '1691d968f8ae5f25036251fd5978be637bbf0b4a':
init: Add C++ tokenizer.
2015-07-30 20:43:55 +00:00
Tom Cherry
fa0c21c94c
init: Create classes for Action and Command
...
This creates the concept of 'event_trigger' vs 'property_trigger'
Previously these were merged into one, such that 'on property:a=b &&
property:b=c' is triggered when properties a=b and b=c as expected,
however combinations such as 'on early-boot && boot' would trigger
during both early-boot and boot. Similarly, 'on early-boot &&
property:a=b' would trigger on both early-boot and again when property
a equals b.
The event trigger distinction ensures that the first example fails to
parse and the second example only triggers on early-boot if
property a equals b.
This coalesces Actions with the same triggers into a single Action object
Change-Id: I8f661d96e8a2d40236f252301bfe10979d663ea6
2015-07-30 13:37:23 -07:00
Lee Campbell
138c540f53
Merge "init: Add C++ tokenizer."
2015-07-30 20:30:07 +00:00
Lee Campbell
220ca84223
init: Add C++ tokenizer.
...
Adds a C++ tokenizer along with unit tests.
This tokenizer will replace the current C implementation
which does a poor job of keeping track of pointers.
This CL is a prerequisite for up coming changes to
the parser. This CL does not wire up this tokenizer and
changes no exsiting code. All that builds is the unit tests.
Change-Id: Iec3740bce7153640adc5e5bbdc57e644cedf0038
TEST: Unit tests all pass. No leaks under valgrind
BUG: 22843198
2015-07-30 18:45:17 +00:00
Yasuhiro Matsuda
70ab38a570
am 102ead3a
: am b10e562b
: Merge "Introduce a mechanism to trace boot sequence."
...
* commit '102ead3ae187a007b8a90b61ea243197927b6ae2':
Introduce a mechanism to trace boot sequence.
2015-07-30 08:05:46 +00:00
Yasuhiro Matsuda
6b802c4b95
am 102ead3a
: am b10e562b
: Merge "Introduce a mechanism to trace boot sequence."
...
* commit '102ead3ae187a007b8a90b61ea243197927b6ae2':
Introduce a mechanism to trace boot sequence.
2015-07-30 08:05:13 +00:00
Yasuhiro Matsuda
b10e562b4c
Merge "Introduce a mechanism to trace boot sequence."
2015-07-30 07:42:09 +00:00
Yasuhiro Matsuda
ea504bc084
am 1a1f9beb
: am dcf89091
: Merge "Add a script to record Android boot time."
...
* commit '1a1f9beb1dbd0da0f305ff44816661cc404ba877':
Add a script to record Android boot time.
2015-07-30 05:48:08 +00:00
Yasuhiro Matsuda
eeea3fc1be
am 1a1f9beb
: am dcf89091
: Merge "Add a script to record Android boot time."
...
* commit '1a1f9beb1dbd0da0f305ff44816661cc404ba877':
Add a script to record Android boot time.
2015-07-30 05:47:39 +00:00
Yasuhiro Matsuda
ab3798399d
Add a script to record Android boot time.
...
perfboot.py repeats the record of each event log during Android
boot specified times. By default, interval between measurements
is adjusted in such a way that CPUs are cooled down sufficiently
to avoid boot time slowdown caused by CPU thermal throttling.
This script also works around the issue of dropbox slowing down
boot time on userdebug build (http://b/20890386 ) by limiting
the number of files to be created by dropbox.
The result is output in a tab-separated value format.
BUG: 22207911
Change-Id: I0ddbac5d1c941efda87bc6db6388d8194d4bb3dd
2015-07-30 14:16:15 +09:00
Yasuhiro Matsuda
f93db4b827
Introduce a mechanism to trace boot sequence.
...
This CL adds a trigger and a service so that Systrace can be used
for tracing events during boot.
persist.debug.atrace.boottrace property is used for switching on
and off tracing during boot. /data/misc/boottrace/categories
file is used for specifying the categories to be traced.
These property and file are rewritten by Systrace when the newly
added option --boot is specified.
Here is an example of tracing events of am and wm catetories
during boot.
$ external/chromium-trace/systrace am wm --boot
This command will cause the device to reboot. Once the device has
booted up, the trace report is created by hitting Ctrl+C.
As written in readme.txt, this mechanism relies on persistent
property, so tracing events that are emitted before that are not
recorded. This is enough for tracing events after zygote is
launched though.
This only works on userdebug or eng build for security reason.
BUG: 21739901
Change-Id: I03f2963d77a678f47eab5e3e29fc7e91bc9ca3a4
2015-07-29 12:53:05 +09:00
Lee Campbell
42f669a144
am f75b5ff1
: am fe39394e
: Merge "init: Adding support to import directories"
...
* commit 'f75b5ff17529e3eb163b9c7c49fc49842d443126':
init: Adding support to import directories
2015-07-28 00:17:15 +00:00
Lee Campbell
3d3401ac85
am f75b5ff1
: am fe39394e
: Merge "init: Adding support to import directories"
...
* commit 'f75b5ff17529e3eb163b9c7c49fc49842d443126':
init: Adding support to import directories
2015-07-27 23:26:25 +00:00
Lee Campbell
f13b1b3139
init: Adding support to import directories
...
Support added so init scripts can now import directories.
BUG: 22721249
Change-Id: I02b566bfb50ea84469f1ea0c6ad205435a1df286
TEST: Tested importing a folder on arm64 emulator
2015-07-27 14:56:03 -07:00
Yabin Cui
9b09bf4aed
am 10821da3
: am 8a502000
: Merge "init: expand_props for onrestart commands."
...
* commit '10821da3221ce4fe021c80956a5cac733c97ebb9':
init: expand_props for onrestart commands.
2015-07-25 02:15:19 +00:00
Yabin Cui
a6d23bd6d2
am 10821da3
: am 8a502000
: Merge "init: expand_props for onrestart commands."
...
* commit '10821da3221ce4fe021c80956a5cac733c97ebb9':
init: expand_props for onrestart commands.
2015-07-25 02:14:18 +00:00
Yabin Cui
57eb040ba9
am bd5f10ad
: am 699be5f6
: Merge "init: do expand_props before calling the builtins."
...
* commit 'bd5f10addfba8df40c8293d95c002044acbfa526':
init: do expand_props before calling the builtins.
2015-07-25 01:21:31 +00:00
Yabin Cui
310851549b
am bd5f10ad
: am 699be5f6
: Merge "init: do expand_props before calling the builtins."
...
* commit 'bd5f10addfba8df40c8293d95c002044acbfa526':
init: do expand_props before calling the builtins.
2015-07-25 01:19:29 +00:00
Yabin Cui
ee53006564
init: expand_props for onrestart commands.
...
It is only a temporary fix. I hope the code can be moved into a member
function of class Command.
Bug: 22654233
Change-Id: I38c24fb624e54986a953f44d398b3b80c3795d24
2015-07-24 18:17:16 -07:00
Yabin Cui
00ede7d262
init: do expand_props before calling the builtins.
...
Also switch expand_props to std::string.
Bug: 22654233
Change-Id: I62910d4f74e2b1a5bd2b14aea440767a2a8462b7
2015-07-24 15:02:19 -07:00
Yabin Cui
62b3f91d14
am bff40697
: am addf7a96
: Merge "init: Let property_get return std::string."
...
* commit 'bff406978aad1a599d01f539d0a9b5718aaceca3':
init: Let property_get return std::string.
2015-07-24 21:02:52 +00:00
Yabin Cui
0ff8590e78
resolved conflicts for merge of bff40697
to mnc-dr-dev-plus-aosp
...
Change-Id: I7d7a614a5eb987ef6aecd32ed15a6eaa43e93957
2015-07-24 13:58:03 -07:00
Yabin Cui
74edcea90e
init: Let property_get return std::string.
...
Bug: 22654233
Change-Id: Id6091f58432f75e966b9871256049fbe17766c10
2015-07-24 11:14:08 -07:00
Elliott Hughes
dd7fb9af1f
am 7f12fa27
: am f5b46079
: Merge "init: use init\'s property expansion code for mount_all"
...
* commit '7f12fa275604504ed874c08d6b7f906e8e522c73':
init: use init's property expansion code for mount_all
2015-07-23 02:07:10 +00:00
Mark Salyzyn
3542f3dafa
am 7b0bb824
: am 93adb524
: Merge "init: Fix logging stutter"
...
* commit '7b0bb82447af0c025ba769d2003f3b1514b9ec25':
init: Fix logging stutter
2015-07-23 02:06:42 +00:00
Mark Salyzyn
f6aaed8020
am 18fc744f
: am 6743dab5
: Merge "init: Add additional logging levels"
...
* commit '18fc744f2ed22d772ca6f1ed69f69eecd9bf86a7':
init: Add additional logging levels
2015-07-23 02:06:41 +00:00
Elliott Hughes
2694ad9ad9
am 7f12fa27
: am f5b46079
: Merge "init: use init\'s property expansion code for mount_all"
...
* commit '7f12fa275604504ed874c08d6b7f906e8e522c73':
init: use init's property expansion code for mount_all
2015-07-22 18:05:02 +00:00
Nan Liu
12df1e118a
init: use init's property expansion code for mount_all
...
Change-Id: I3bd00c74cd126b66927eca7812943f8427009356
Signed-off-by: Nan Liu <nan.liu619@gmail.com>
2015-07-22 10:36:49 -07:00