Commit graph

27817 commits

Author SHA1 Message Date
Yabin Cui
b13d4a31a3 Merge "libbase: fix the way to find temp dir." 2017-02-14 00:29:40 +00:00
Yabin Cui
57e9cea099 libbase: fix the way to find temp dir.
Tests running in app context can't access /data/local/tmp,
so try current directory if /data/local/tmp is not accessible.

Bug: http://b/18790309
Test: run unit test in app context and shell context.
Change-Id: If66fe8f0ac3edb3a32a2a2a50a524364f818a58b
2017-02-13 15:50:56 -08:00
James Hawkins
7c92e48450 bootstat: Refactor init/utils/boot_clock into base/chrono_utils.
Use this for bootstat and init. This replaces the custom uptime parser in
bootstat.

This is a reland of aosp/332854 with a fix for Darwin.

Bug: 34352037
Test: chrono_utils_test
Change-Id: Ib2567d8df0e460ab59753ac1c053dd7f9f1008a7
2017-02-13 15:47:21 -08:00
Jerry Zhang
55205a565b adb: Pre allocate kernel memory
This allows reliable use of larger buffer sizes.
Max r/w size is set only when that preallocation
is successful so that memory is guaranteed to be
available.

Bug: 31722483
Test: adb push with multi GB files
Change-Id: Ia0459ca051988abb144645871792e8f840dd3ff7
2017-02-13 14:20:47 -08:00
Elliott Hughes
bf0dd7cb03 Fix ubsan failure in android::base::Split.
ubsan doesn't like us incrementing std::string::npos, even if we won't use
the result.

Bug: http://b/28729303
Test: ran tests
Change-Id: I8227eca57dc6f3e49626c7025514caa04ef18f0a
2017-02-13 14:13:24 -08:00
James Hawkins
7607adfd53 libmetricslogger: Use libBionicGtestMain instead of a custom test runner.
Also remove commented out code I accidentally left in.

Bug: 34456830
Test: libmetricslogger_test
Change-Id: If76d3013ec7eaa71cef67c6db04d810745e3833e
2017-02-13 13:41:44 -08:00
Yabin Cui
b850b9d589 Merge "libbacktraceoffline: make it thread-safe." am: a3e4977325
am: 47ac9e420f

Change-Id: I3bcd573d2247abab595fab26fbc19a30192da56f
2017-02-13 21:36:38 +00:00
Yabin Cui
47ac9e420f Merge "libbacktraceoffline: make it thread-safe."
am: a3e4977325

Change-Id: I90fab011054ffd9e3aa934cac551f3e0f9144ed0
2017-02-13 21:34:18 +00:00
Treehugger Robot
a3e4977325 Merge "libbacktraceoffline: make it thread-safe." 2017-02-13 21:28:15 +00:00
Sandeep Patil
fc86f2442f init: fstab: add support to read fstab entries from device tree
for early mount, we need a way to tell init where to find vendor,
odm partitions (also system in case of non-A/B devices). Also, that
needs to be independent of kernel cmdline since the cmdline will likely
exceed its limit.

The change adds support for parse and create fstab entries that can be
directly sent to the fs_mgr for mounting partitions early in init first
stage.

Sample DT entry to mount vendor partition early on angler-

firmware {
    android {
        compatible = "android,firmware";
        fstab {
            compatible = "android,fstab";
            vendor {
                compatible = "android,vendor";
                dev = "/dev/block/platform/soc.0/f9824900.sdhci/by-name/vendor";
                type = "ext4";
                mnt_flags = "ro,barrier=1,inode_readahead_blks=8";
                fsmgr_flags = "wait";
            };
        };
    };
};

b/27805372

Test: Boot angler and sailfish with early "vendor" partition mount by
adding aforementioned DT node and enable CONFIG_PROC_DEVICETREE in kernel

Change-Id: I669013e3fdb157e88719436534f63989dec95d60
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-02-13 12:35:39 -08:00
Dimitry Ivanov
02538b1f6b Merge "Add comment to android_link_namespaces method" am: 7e7913cb67
am: 70cfd3ae79

Change-Id: Ic2dc339da35e52af410cf8a056bad2f75733a258
2017-02-13 19:31:52 +00:00
Elliott Hughes
b30769a87a Implement android::base::WaitForProperty.
Also adapt libcutils to the bionic change that was necessary for this.

Bug: http://b/35201172
Test: ran tests
Change-Id: I72a98b70b03d23e958b46778b505fbd5c86c32ae
2017-02-13 11:29:02 -08:00
Dimitry Ivanov
70cfd3ae79 Merge "Add comment to android_link_namespaces method"
am: 7e7913cb67

Change-Id: Iaa7062ebf722dc614552849579bcc80cb059d276
2017-02-13 19:28:52 +00:00
Treehugger Robot
7e7913cb67 Merge "Add comment to android_link_namespaces method" 2017-02-13 19:23:49 +00:00
Sandeep Patil
35403ebaf8 init: early_mount: add support to mount non-verity partitions early
This is done by parsing 'androidboot.fstab=<fstab>' kernel cmdline
option to get the fstab file that *only* specifies partitions to be
mounted early (i.e. in init's first stage).

Note that, the same fstab file may not be used as an argument to
mount_all later in the boot as that will cause fs_mgr to fail with
EBUSY.

TODO:
- Possibly add a new mount_mode so the same fstab can be used for
early_mount, 'mount_all --early/--late' etc.
- Add support for dm-verity enabled partitions to mount early.
- Add support for getting fstab arguments through DT instead of kernel
cmdline.

Bug: 27805372

Test:
Boot angler by passing a seperate fstab file using the kernel
cmdline option to mount vendor partition early, remove the vendor
partition entry from the main fstab file for the test.

Boot sailfish by passing a seperate fstab entry via device tree
to mount vendor partition early. Remove vendor partition entry from
the main fstab file for the test

Change-Id: I18785b893c54c8cee960ab44d5e8f83e5d624aa8
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-02-13 11:17:51 -08:00
James Hawkins
e8466356d0 Merge "libmetricslogger: Refactor Tron metrics histogram logging out of bootstat." am: 64984aaa6e
am: 348a393df4

Change-Id: I3a4ac2d3f10aa881477074cf9ce10a444c0e22fa
2017-02-13 18:45:00 +00:00
Yabin Cui
f73fafcdaf Merge "libbacktraceoffline: choose correct debug section for a given address." am: 5c3a707542
am: c458193f7f

Change-Id: I0c705f6cbc04f90713cc834d68d85a672982bafd
2017-02-13 18:44:47 +00:00
James Hawkins
348a393df4 Merge "libmetricslogger: Refactor Tron metrics histogram logging out of bootstat."
am: 64984aaa6e

Change-Id: I6628c5ea371c34dcc1b0e8ff0a74758479dd7c58
2017-02-13 18:42:30 +00:00
Yabin Cui
c458193f7f Merge "libbacktraceoffline: choose correct debug section for a given address."
am: 5c3a707542

Change-Id: If3188979346e26522707ac6aefa91a30a0300f13
2017-02-13 18:42:18 +00:00
James Hawkins
64984aaa6e Merge "libmetricslogger: Refactor Tron metrics histogram logging out of bootstat." 2017-02-13 18:41:23 +00:00
Yabin Cui
26369a3a01 libbacktraceoffline: make it thread-safe.
Make libbacktraceoffline thread-safe by protecting the global variable with
a lock. So it can be used in a multi-thread environment, like by
simpleperf inplace sampling.

Bug: http://b/30974760
Test: no
Change-Id: I4699bf15dfa69ac75faeb4e79a73fb3af0f08dfc
2017-02-13 10:35:06 -08:00
Yabin Cui
5c3a707542 Merge "libbacktraceoffline: choose correct debug section for a given address." 2017-02-13 18:33:50 +00:00
Narayan Kamath
eeabbeba16 Reapply 1339871138: Only apply schedTune boost to top-app tasks
Parts of this change were accidentally reverted by an incorrect
manual merge conflict resolution.

Bug: 35306127
Test: manual
Change-Id: I8e6d6b07dcaa548775213dd42ba9def7431c62d3
2017-02-13 17:34:51 +00:00
Dimitry Ivanov
3f5b5dc546 Add comment to android_link_namespaces method
Test: n/a - comment only change
Bug: http://b/26833548
Change-Id: I40356eec37aeb864206982feb877c59c21c9a433
2017-02-13 08:52:35 -08:00
Dimitry Ivanov
14c0fead62 Merge "Replace public library list with shared lib sonames" am: fd87c062ab
am: e6050e248a

Change-Id: I0adba2c954625fe711ce4eb2a54ee482a7bd563d
2017-02-11 19:33:54 +00:00
Dimitry Ivanov
e6050e248a Merge "Replace public library list with shared lib sonames"
am: fd87c062ab

Change-Id: I6c3578920711e16f28a04305bc12c02db905bf3e
2017-02-11 19:30:02 +00:00
Dimitry Ivanov
fd87c062ab Merge "Replace public library list with shared lib sonames" 2017-02-11 19:26:50 +00:00
Yabin Cui
c4a480e423 libbacktraceoffline: choose correct debug section for a given address.
1. In /system/lib/libart.so, the ranges of functions covered by .eh_frame
and .ARM.exidx overlap with each other. Currently, we don't check .eh_frame
if the address is in the ranges of functions covered by .ARM.exidx. It leads
to a wrong unwinding result. So change the logic to first try .eh_frame and
.debug_frame, if it fails, then try .ARM.exidx.
2. Add test for Item 1.

Bug: http://b/35251937
Test: run backtrace_test.

Change-Id: Ic412705617c300bc69b4ece178cc2e1bb3eb765b
2017-02-10 17:51:16 -08:00
Todd Poynor
23b31ba7e3 Merge "init.rc: create /data/misc/reboot for storing reboot reason" am: e499403bf4
am: 4dbefe4d4c

Change-Id: I71aa9b65cb57eac2e49fce94344b20e0a4a63bc1
2017-02-10 21:38:54 +00:00
Wei Wang
674271c508 Merge "bootstat.rc: record post_decrypt_time_elapsed only for FDE device" am: 936738b8f7
am: e6ceb5a5b9

Change-Id: Ia993abb2aa0fe2c7eae248d195d2e263677955c2
2017-02-10 21:38:41 +00:00
Todd Poynor
4dbefe4d4c Merge "init.rc: create /data/misc/reboot for storing reboot reason"
am: e499403bf4

Change-Id: Idf51132742d019c42f6ca6a5d45511c504d701c4
2017-02-10 21:36:23 +00:00
Wei Wang
e6ceb5a5b9 Merge "bootstat.rc: record post_decrypt_time_elapsed only for FDE device"
am: 936738b8f7

Change-Id: If9b499c73fc2399ca3e106c9df7626f97b09e4e1
2017-02-10 21:36:10 +00:00
Treehugger Robot
e499403bf4 Merge "init.rc: create /data/misc/reboot for storing reboot reason" 2017-02-10 21:33:36 +00:00
Treehugger Robot
936738b8f7 Merge "bootstat.rc: record post_decrypt_time_elapsed only for FDE device" 2017-02-10 21:32:30 +00:00
Todd Poynor
44ee2b0ef8 init.rc: create /data/misc/reboot for storing reboot reason
Create /data/misc/reboot if not already.

Bug: 30994946
Test: manual: reboot command; modified thermal-engine.conf
Change-Id: I66418beba539f76759b44742af7700f26a2c1f87
2017-02-10 19:26:13 +00:00
Neil Fuller
948f18c51c Merge "Documentation improvements" am: cee583bc53
am: 06979c821e

Change-Id: I700f7e4f9a57695efb55c3792646fe2a2a995bb5
2017-02-10 15:22:12 +00:00
Neil Fuller
06979c821e Merge "Documentation improvements"
am: cee583bc53

Change-Id: I8d1d1195d629dc6432155454fb4fafaf90400248
2017-02-10 15:20:12 +00:00
Neil Fuller
cee583bc53 Merge "Documentation improvements" 2017-02-10 15:16:43 +00:00
Neil Fuller
0038613b82 Merge "Rename "Bundle" to "Distro"" am: 0ef5727905
am: cb9ea947f3

Change-Id: Id337308ef83dfff10092040da899adcc52de0803
2017-02-10 15:01:23 +00:00
Neil Fuller
cb9ea947f3 Merge "Rename "Bundle" to "Distro""
am: 0ef5727905

Change-Id: Ia09aa0366f6109eb885bb95e7e12b59376bf3d08
2017-02-10 14:59:23 +00:00
Neil Fuller
0ef5727905 Merge "Rename "Bundle" to "Distro"" 2017-02-10 14:55:44 +00:00
Neil Fuller
58104312c8 Merge "Add bundle format minor version check logic" am: 3cf4b8664a
am: 6074cb8805

Change-Id: I449f3ebc0c471adf612751f62d0b61b30748a37a
2017-02-10 13:09:31 +00:00
Neil Fuller
6074cb8805 Merge "Add bundle format minor version check logic"
am: 3cf4b8664a

Change-Id: I8d0267b2fab9d968f6a6403d629f786fd8fc15aa
2017-02-10 13:07:30 +00:00
Neil Fuller
3cf4b8664a Merge "Add bundle format minor version check logic" 2017-02-10 13:02:35 +00:00
bowgotsai
98b4fb7d5d Merge "fs_mgr: removing the dependency of requiring /vbmeta in fstab for AVB" am: f803afaa65
am: 776caaf6ea

Change-Id: I07435ef01b79ba4b5f5cee65ec7a9d85c3cae2c4
2017-02-10 06:27:47 +00:00
bowgotsai
776caaf6ea Merge "fs_mgr: removing the dependency of requiring /vbmeta in fstab for AVB"
am: f803afaa65

Change-Id: I7a397030eb8a889c8d9f461d44c566def0479a01
2017-02-10 06:25:16 +00:00
Treehugger Robot
f803afaa65 Merge "fs_mgr: removing the dependency of requiring /vbmeta in fstab for AVB" 2017-02-10 06:21:14 +00:00
George Burgess IV
f5a0eeb860 Merge "cutils: Add clang FORTIFY support" am: f2e615c7b8
am: 9a7f57b909

Change-Id: Ia12dc512d2589f63244a03909cd4e028188d0030
2017-02-10 02:14:15 +00:00
George Burgess IV
035b27cc2f Merge "Add permission bits to open() with O_CREAT." am: c33ba01a71
am: 7d1dc5083b

Change-Id: I1f8003d8276d7ed33e290548e3e52ee88cf5350b
2017-02-10 02:14:09 +00:00
George Burgess IV
9a7f57b909 Merge "cutils: Add clang FORTIFY support"
am: f2e615c7b8

Change-Id: Ic13ab7bc917e0bf0cc6549749d5f1f8a67f3c40e
2017-02-10 02:11:46 +00:00