Commit graph

29245 commits

Author SHA1 Message Date
Tom Cherry
856441d07f Merge "init: remove superfluous forward definitions" am: deb23ba2c1
am: 256c8f5076

Change-Id: If844bf1c8c38465365bdc9d8b0f4c78c045c7b8f
2017-03-28 02:35:59 +00:00
Tom Cherry
256c8f5076 Merge "init: remove superfluous forward definitions"
am: deb23ba2c1

Change-Id: Ic8126b783cf8083a64cc0955074f586420685cdd
2017-03-28 02:32:10 +00:00
Treehugger Robot
deb23ba2c1 Merge "init: remove superfluous forward definitions" 2017-03-28 02:22:51 +00:00
Tom Cherry
b64b91ccaa Merge "init: Fix README.md for writepid" am: 88d6b4af16
am: dc597affcc

Change-Id: I75ea8f8f2b3ddff6af353498337153d21a86d91a
2017-03-28 01:17:57 +00:00
Tom Cherry
dc597affcc Merge "init: Fix README.md for writepid"
am: 88d6b4af16

Change-Id: Ic65adea2c9fc69118890f0be79f45152be307bcf
2017-03-28 01:13:57 +00:00
Treehugger Robot
88d6b4af16 Merge "init: Fix README.md for writepid" 2017-03-28 01:07:50 +00:00
Tom Cherry
46b6c43b7c init: remove superfluous forward definitions
Test: Boot bullhead
Change-Id: I4a005616a825529bc2ad1b413e51b501f6407cbd
2017-03-27 17:55:37 -07:00
Wei Wang
4640918495 Merge "init: add support of multiple class names" am: 3c1568aa13
am: fd450bb95a

Change-Id: Ia859d1817eb80a34f339fe99894bffa4163440ce
2017-03-28 00:51:25 +00:00
Wei Wang
fd450bb95a Merge "init: add support of multiple class names"
am: 3c1568aa13

Change-Id: Ib018fc301449ab8f2d1db8550724c11d5df0430e
2017-03-28 00:47:55 +00:00
Bowgo Tsai
f6b7adb464 Merge "fs_mgr_avb: allow top-level vbmeta struct to be in 'boot' partition" am: ea057b46e0
am: 75ada5fce3

Change-Id: I7e0e955d11a7f956f70bc04a95a2fe31fb2d5a4b
2017-03-28 00:39:24 +00:00
Treehugger Robot
3c1568aa13 Merge "init: add support of multiple class names" 2017-03-28 00:39:09 +00:00
Bowgo Tsai
75ada5fce3 Merge "fs_mgr_avb: allow top-level vbmeta struct to be in 'boot' partition"
am: ea057b46e0

Change-Id: Ib7583cd28f93e882a00dade3507ee75183674115
2017-03-28 00:35:57 +00:00
Treehugger Robot
ea057b46e0 Merge "fs_mgr_avb: allow top-level vbmeta struct to be in 'boot' partition" 2017-03-28 00:28:33 +00:00
Wei Wang
eb6d588cd6 Merge "libcutils: remove schedgroup" am: 3d8911fbbe
am: c0fc8e7b7b

Change-Id: I348e7151248f3116f483f6c5ae4e7c924fe75490
2017-03-28 00:24:53 +00:00
Wei Wang
c0fc8e7b7b Merge "libcutils: remove schedgroup"
am: 3d8911fbbe

Change-Id: I351d6c199512cc8e5c5cd466452ea910f69061e7
2017-03-28 00:21:53 +00:00
Treehugger Robot
3d8911fbbe Merge "libcutils: remove schedgroup" 2017-03-28 00:15:46 +00:00
Mark Salyzyn
c974c79c8c Merge "logcat: test: run 256 simultaneous logcats" am: b15429c0ea
am: 232b57c60b

Change-Id: I83fba7238ee3632211008b5d80080ff403efbda9
2017-03-27 22:54:33 +00:00
Mark Salyzyn
232b57c60b Merge "logcat: test: run 256 simultaneous logcats"
am: b15429c0ea

Change-Id: I88aaf94060873c6aebfd30f169741afa43616371
2017-03-27 22:51:36 +00:00
Mark Salyzyn
b15429c0ea Merge "logcat: test: run 256 simultaneous logcats" 2017-03-27 22:46:03 +00:00
Mark Salyzyn
77a1fa9070 Merge changes I96998c4b,I161bf03b am: dd0cd8d88f
am: f17500474a

Change-Id: I1458020e121f52070082b7dc6791f1fc2079c131
2017-03-27 22:39:37 +00:00
Keun-young Park
3c86cc4bc8 Merge "update shutdown sequence and use shutdown_timeout to cover all wait" am: 59cebb6e6f
am: bfb9bea368

Change-Id: I35d70a225670c1946e0a705e174c856ebe67ba7a
2017-03-27 22:39:25 +00:00
Mark Salyzyn
f17500474a Merge changes I96998c4b,I161bf03b
am: dd0cd8d88f

Change-Id: I54191d23beed6fa2a2703a5cf8cb688b5c7a50fc
2017-03-27 22:35:19 +00:00
Keun-young Park
bfb9bea368 Merge "update shutdown sequence and use shutdown_timeout to cover all wait"
am: 59cebb6e6f

Change-Id: I4a09594aba83bc489c9e1735b27e4dbdf5256385
2017-03-27 22:35:03 +00:00
Mark Salyzyn
dd0cd8d88f Merge changes I96998c4b,I161bf03b
* changes:
  logd: last iterator initialized incorrectly
  logd: ASAN cleansing
2017-03-27 22:28:35 +00:00
Keun-young Park
59cebb6e6f Merge "update shutdown sequence and use shutdown_timeout to cover all wait" 2017-03-27 22:27:30 +00:00
Mark Salyzyn
1f46716f1c logd: last iterator initialized incorrectly
last should start with mLogElements.end() and be updated as
we iterate to find a matching time entry in the list. Since
it is impossible(sic) for a newer start time to be supplied
than the list, the incorrect iterator initialization should
be inconsequential, but if it ever happens this change will
behave correctly and dump nothing.

Test: gTest liblog-unit-tests, logd-unit-tests and logcat-unit-tests
Bug: 36536248
Bug: 36608728
Change-Id: I96998c4b713258f29d5db2e24a83ae562ddf3420
2017-03-27 21:26:13 +00:00
Wei Wang
641ff0a4d8 init: add support of multiple class names
Add support of multiple class names in service, so that related services
can be grouped together. By doing this, we can start/stop some services
for special purpose. For example, early zygote, early boot animation
and etc.

Bug: 36535312
Test: marlin boots with defined classes
Change-Id: Ifeaaf034fd836816e24f3775bece53ea83faada6
2017-03-27 20:59:05 +00:00
Keun-young Park
3ee0df9bdf update shutdown sequence and use shutdown_timeout to cover all wait
- Use ro.build.shutdown_timeout to cover the total time for shutdown.
  Limit wait time for termination only to half of shutdown_timeout
  with max of 3 secs as process not terminating by that time
  will not terminate anyway. It is better to move to the next
  stage quickly. fsck time for user shutdown is excluded from timeout.
- Change last detach to kill, sync, and umount. Last detach did not
  work in many tests.
- add sync after emulated partitions umount as it can trigger
  change in /data.

bug: 36551393
Test: many reboots
Change-Id: Ib75dc19af79b8326b02ccef6b16a8817ae7f8b0e
2017-03-27 13:44:50 -07:00
Mark Salyzyn
0484b3b575 logd: ASAN cleansing
A mixture of fixes and cleanup for LogKlog.cpp and friends.

- sscanf calls strlen.  Check if the string is missing a nul
  terminator, if it is, do not call sscanf.
- replace NULL with nullptr for stronger typechecking.
- pass by reference for simpler code.
- Use ssize_t where possible to check for negative values.
- fix FastCmp to add some validity checking since ASAN reports that
  callers are not making sure pre-conditions are met.
- add fasticmp templates for completeness.
- if the buffer is too small to contain a meaningful time, do not
  call down to log_time::strptime() because it does not limit its
  accesses to the buffer boundaries, instead stopping at a
  terminating nul or invalid match.
- move strnstr to LogUtils.h, drop size checking of needle and
  clearly report the list of needles used with android::strnstr
- replace 'sizeof(static const char[]) - 1' with strlen.

Test: gTest liblog-unit-test, logd-unit-tests & logcat-unit-tests
Bug: 30792935
Bug: 36536248
Bug: 35468874
Bug: 34949125
Bug: 34606909
Bug: 36075298
Bug: 36608728
Change-Id: I161bf03ba029050e809b31cceef03f729d318866
2017-03-27 13:32:57 -07:00
Jeff Vander Stoep
cf4fdc1c6a Merge "Move selinux policy build decisions to sepolicy Makefile" am: 784c851785
am: b19825012e

Change-Id: I78d6d58f31e5e7c77178b949e629c99257c90ea5
2017-03-27 20:09:49 +00:00
Jeff Vander Stoep
b19825012e Merge "Move selinux policy build decisions to sepolicy Makefile"
am: 784c851785

Change-Id: If07e860115d028acd98b62488326eeb9c9a49ceb
2017-03-27 20:06:50 +00:00
Treehugger Robot
784c851785 Merge "Move selinux policy build decisions to sepolicy Makefile" 2017-03-27 20:03:04 +00:00
Tom Cherry
e564dac2b3 init: Fix README.md for writepid
writepid takes a list of space delimited files.  Make this clear in
the documentation, following the format for repeated fields used in
the rest of the file.

Test: N/A
Change-Id: I5bbe453fcb54f060d3cc5a82e9b38d3091a1ece3
2017-03-27 12:55:33 -07:00
Tao Bao
4ba8d8b5bf Merge "fs_mgr: use different fstab paths for normal/recovery boot" am: 9c59029add
am: 07052c0509

Change-Id: I63466cb1770c99665fbfc96bd19ab9f770a2e429
2017-03-27 19:32:12 +00:00
Tao Bao
07052c0509 Merge "fs_mgr: use different fstab paths for normal/recovery boot"
am: 9c59029add

Change-Id: I1b7d622f1d518f446301c4467fab72107cc4f171
2017-03-27 19:29:41 +00:00
Tao Bao
9c59029add Merge "fs_mgr: use different fstab paths for normal/recovery boot" 2017-03-27 19:23:12 +00:00
Mark Salyzyn
fbc0fe429b logcat: test: run 256 simultaneous logcats
For logd daemon, heavy reader stress. For system popen fork and
execute of logcat measure baseline against liblogcat. For liblogcat
local concurrent thread, locking, argument parsing and context scaling
for popen-style pair of android_logcat_run_command_thread* functions.

NB: 1000 logcat executables ran, but did not scale well on time
    blocked for more than a minute. With 343 contexts of
    android_logcat_run_command_thread ran out of local resources
    to even return a file descriptor, and the per-context event tag
    mappings coincidentally ran out at 340 when threads ran, although
    that path was consistently 15% faster than the popen test.

Test: gtest logcat-unit-tests --gtest_filter=*.End_to_End_multitude
Bug: 35326290
Change-Id: I0e1a5d4f8ffbd77fa8db13d53f4d328973731895
2017-03-27 11:57:53 -07:00
Wei Wang
40267986da libcutils: remove schedgroup
After removing bg_non_interactive cgroup, there is only a ROOT cgroup.
This CL removes the no-op trying to set cgroup.
It also removes the attempt to open non-exist bg_non_interactive cgroup.

Bug: 36649832
Test: marlin boosts and cgroup ROOT task looks normal
Change-Id: Ibccd6db1499306174c940aec9219b20c1b86173d
2017-03-27 11:57:29 -07:00
Bowgo Tsai
d05a2f7dcb fs_mgr: use different fstab paths for normal/recovery boot
recovery boot: /etc/recovery.fstab
  normal boot: use the first one found by the order:
               /odm/etc/fstab.{hardware} ->
               /vendor/etc/fstab.{hardware} ->
               /fstab.{hardware}

Bug: 35811655
Bug: 36637553

Test: Sideload OTA installation in sailfish
Change-Id: I3e260e077afa5a37fb65246246c824e9379e68c8
2017-03-28 01:34:28 +08:00
Steven Moreland
352b3d737c Merge "Revert "Revert "Start hwservicemanager earlier.""" am: ca622b4e78
am: e326cb121e

Change-Id: Ie53fb18bdc194adeab7ec8e46b11463e633a3afc
2017-03-27 17:34:00 +00:00
Steven Moreland
e326cb121e Merge "Revert "Revert "Start hwservicemanager earlier."""
am: ca622b4e78

Change-Id: I6d08f24f108f84130c059f2515219ebcdbc82b18
2017-03-27 17:31:05 +00:00
Treehugger Robot
ca622b4e78 Merge "Revert "Revert "Start hwservicemanager earlier.""" 2017-03-27 17:28:38 +00:00
Bowgo Tsai
07fb5bf7f0 Merge "fs_mgr_avb: fix return value check of fs_mgr_get_boot_config()" am: 51da2aaa36
am: eb0a5e7e26

Change-Id: Ib6e4a659fb1b3912263ec9b32f9da24c4d1ea16c
2017-03-27 17:16:55 +00:00
Bowgo Tsai
eb0a5e7e26 Merge "fs_mgr_avb: fix return value check of fs_mgr_get_boot_config()"
am: 51da2aaa36

Change-Id: Icf84ec85fe8e6c32238433a1e9ffec202ccb5a75
2017-03-27 17:14:25 +00:00
Treehugger Robot
51da2aaa36 Merge "fs_mgr_avb: fix return value check of fs_mgr_get_boot_config()" 2017-03-27 17:08:33 +00:00
Bowgo Tsai
97db0809f4 fs_mgr_avb: fix return value check of fs_mgr_get_boot_config()
fs_mgr_get_boot_config() returns true/false but the return value check
in current fs_mgr_avb is for 0/1. This was introduced during a refactoring.

Check true/false for the return value.

Bug: 33254008
Test: manual test AVB on bullhead
Change-Id: I72c366627214df4a99c4d9cf1eb577e94f7afb31
2017-03-27 22:33:21 +08:00
Bowgo Tsai
b016896c98 fs_mgr_avb: allow top-level vbmeta struct to be in 'boot' partition
avb_ops->read_from_partition() should return
AVB_IO_RESULT_ERROR_NO_SUCH_PARTITION if the requested partition does
not exist. Then libavb will try to load top-level vbmeta from /boot partition.

Two related changes in external/avb:

  https://android-review.googlesource.com/#/c/344907/
  https://android-review.googlesource.com/#/c/348731/

Bug: 35880930
Test: test AVB on bullhead with top-level vbmeta being at /boot
Change-Id: I80355ba5ae4d29a6f102714cd2f7c2550b238f27
2017-03-27 21:35:06 +08:00
Jeff Vander Stoep
7ef28f4e4f Move selinux policy build decisions to sepolicy Makefile
Test: Test build/boot Marlin with split policy
Test: Test build/boot Bullhead with combined policy
Bug: 36138508
Change-Id: I84654d19c4d8e9fe9086fde742ee80cd043dfbe1
2017-03-26 07:56:29 -07:00
Dimitry Ivanov
7bbe56c46b Merge "Add ld.config.txt to /system/etc" am: d444f8663d
am: e6f9497cca

Change-Id: I7889a08a6805a94740b87259312631b2ca0c12f6
2017-03-25 05:23:56 +00:00
Dimitry Ivanov
e6f9497cca Merge "Add ld.config.txt to /system/etc"
am: d444f8663d

Change-Id: I47a9dc4f028582575fb9da0c5a87103ed22c7945
2017-03-25 05:21:23 +00:00