Commit Graph

28906 Commits

Author SHA1 Message Date
Josh Gao 981761bbb2 debuggerd: remove obsolete dumpable check.
PR_SET_DUMPABLE is ignored now.

Bug: http://b/35872161
Test: debuggerd -b `pidof surfaceflinger`
Change-Id: Iefd090f2b762d454d1e6ce8061ff5f992974267c
2017-03-01 11:55:16 -08:00
Bowgo Tsai 6befc485c7 Merge "init: skip early mount in recovery mode"
am: 8951c1313d

Change-Id: Ie9e199acaa9577ad72c6d57cc6cbc1be895fb4a4
2017-03-01 18:28:48 +00:00
Treehugger Robot 8951c1313d Merge "init: skip early mount in recovery mode" 2017-03-01 18:21:17 +00:00
Mark Salyzyn b45a175cdc liblogcat: -v and ${ANDROID_PRINTF_LOG} support comma separated list
Deal with yet another reentrancy issue with strtok() and do not
treat optarg as fungible data, allocate a temporary copy.  Add
support in the -v flag and environmental variable ANDROID_PRINTF_LOG
for a comma-separated list of format and format modifiers.

Test: manual + gTest logcat-unit-tests
Bug: 35326290
Change-Id: I073e5676d59ba41bfd36df86942342766ef730f1
2017-03-01 08:48:33 -08:00
Mark Salyzyn de022a841f liblogcat: replace NULL with nullptr
- Replace all NULL, macro defined to 0, with nullptr.  nullptr is a
  keyword of type nullptr_t, with a value of (nullptr_t)0, a pointer
  type of sizeof(void*) that can not confusingly promote to an int.
- Replace all boolean evaluations of values against 0, NULL, and
  nullptr with direct, ! or !! as appropriate.
- Note that thread_stopped should be semaphore, defer that to
  a non-code-quality improvement patch.
- Check for null context in android_logcat_destroy.
- Run clang-format to realign format with setting.

Test: compile and gTest logcat-unit-tests
Bug: 35326290
Change-Id: Iaf729cd7899c6cece78431536ed325604f0e353f
2017-03-01 08:48:04 -08:00
Bowgo Tsai 32232724fb init: skip early mount in recovery mode
We don't need early mount in recovery mode for security considerations,
e.g., users should explicitly select 'mount /system' from the recovery
menu. This CL checks the existence of file "/sbin/recovery" and skip
early mount when it is found.

Bug: 35853576
Test: early mount /vendor without dm-verity on sailfish
Test: early mount not happen in recovery mode on sailfish
Change-Id: I69cc96f6fd0de6ce493082921738a958dd571115
2017-03-02 00:30:58 +08:00
Elliott Hughes 734aacf679 Merge "There's no longer a limit to property names."
am: b6cb9b0457

Change-Id: I668c7298cdcb8b57f1397c3ef5469ad6f141ea66
2017-03-01 00:06:40 +00:00
Treehugger Robot b6cb9b0457 Merge "There's no longer a limit to property names." 2017-03-01 00:03:58 +00:00
Ryan Campbell 2d3378350a Merge "Add global GCOV_PREFIX option."
am: df0f792a9e

Change-Id: Ia3c990cc5d3e838a92ecb7dd144843f872b1ae7e
2017-02-28 23:32:11 +00:00
Treehugger Robot df0f792a9e Merge "Add global GCOV_PREFIX option." 2017-02-28 23:28:45 +00:00
Keun-young Park e3d4615f80 Merge "add base::WaitForPropertyCreation"
am: 22a64b3a8a

Change-Id: I19719bf134fbd23a5473ecdeecc049c78a727028
2017-02-28 22:42:14 +00:00
Keun-young Park bba9f8a9b2 Merge "set ro.boottime.persistent_properties when persisted props are restored"
am: 73c6544b08

Change-Id: I97c564b93fbc37a898ca937f2d28f372c6687fe7
2017-02-28 22:42:08 +00:00
Keun-young Park 22a64b3a8a Merge "add base::WaitForPropertyCreation" 2017-02-28 22:39:41 +00:00
Keun-young Park 73c6544b08 Merge "set ro.boottime.persistent_properties when persisted props are restored" 2017-02-28 22:39:41 +00:00
Mark Salyzyn 119933f0a4 Merge "liblog: event log tags cache miss call logd for update"
am: 364bf6db00

Change-Id: Iec62a14af4d213caf4a26b838c8d5e74edb898be
2017-02-28 22:26:35 +00:00
Mark Salyzyn 364bf6db00 Merge "liblog: event log tags cache miss call logd for update" 2017-02-28 22:24:17 +00:00
Mark Salyzyn 2a0044e4b0 liblog: event log tags cache miss call logd for update
Deal with cache miss in the event tag map resources and switch to
"Plan B" to ask long-path to logd for a determination on the tag,
name and format.

logcat-unit-tests liblogcat.descriptive does an under-the-hood call
to logd to add a new logtag but the in-process mapping fails to
pick it up because the /dev/event-tag-map map is SHARED PRIVATE for a
few moments to garner some (linux) efficiency with other copies that
are in the process.  Without the workaround of marking the mapping
dirty to be reread, we are using this change as the proper workaround
that fixes the later parts of this test.

Test: gTest logcat-unit-tests --gtest_filter=liblogcat.descriptive
Bug: 31456426
Bug: 35326290
Change-Id: Ibe54d4df00ed92248e1e644ecebc95f60b222b4d
2017-02-28 14:23:18 -08:00
Elliott Hughes b7788fd454 There's no longer a limit to property names.
Bug: http://b/33926793
Test: boots
Change-Id: I8554d7af74e064c114cf817f5a2ba1247fa2a2db
2017-02-28 14:12:54 -08:00
Colin Cross 9ece9401a4 Merge changes I975ba933,Ica9d211b
am: a9ef4dc7a2

Change-Id: I4e4effd0176bab0eff9b970702eac12fce3d69c5
2017-02-28 20:32:31 +00:00
Colin Cross a9ef4dc7a2 Merge changes I975ba933,Ica9d211b
* changes:
  Add tests for multiton issue
  Add GetExecutableDirectory to libbase
2017-02-28 20:29:17 +00:00
Keun-young Park e2d986daa6 add base::WaitForPropertyCreation
- unlike base::WaitForProperty, which waits for specific value to
  be set, this one only waits until the property is created.

bug: 35178781
Test: added unit test
Change-Id: Idbf98c2152fe768357302f6b69310c55305f5d54
2017-02-28 12:08:54 -08:00
Keun-young Park 7d3202650d set ro.boottime.persistent_properties when persisted props are restored
- allows components relying on persisted props to wait for this property.

bug: 35178781
Test: reboots
Change-Id: I06cbf2a6b375654fcc277a2699fceeb23846a241
2017-02-28 11:31:54 -08:00
Mark Salyzyn 38d33010d0 Merge "liblogcat: measure performance"
am: 8a3a166066

Change-Id: I2b294ea7477a079ee3f6d35f5fc6e7a4c8592196
2017-02-28 17:25:15 +00:00
Treehugger Robot 8a3a166066 Merge "liblogcat: measure performance" 2017-02-28 17:18:46 +00:00
Mark Salyzyn e69148271c Merge "liblogcat: add simple stdout redirection"
am: 1f8aa4cffd

Change-Id: Id1944628c42ae21b4514a3cb314c5f9df8d12934
2017-02-28 17:13:47 +00:00
Treehugger Robot 1f8aa4cffd Merge "liblogcat: add simple stdout redirection" 2017-02-28 17:06:13 +00:00
Colin Cross a0931ebd64 Add tests for multiton issue
Test accessing a singleton from two libraries, the second of which
depends on the first but is dlopen'd after the first is already
loaded.

Bug: 35674422
Test: out/host/linux-x86/nativetest64/libutils_tests/libutils_tests
Change-Id: I975ba933a19b941a52bdb6e9c221a6910ffb8081
2017-02-28 16:34:35 +00:00
Colin Cross bb3a515f46 Add GetExecutableDirectory to libbase
Tests will often want to get the executable directory in order to
find test data.

Test: out/host/linux-x86/nativetest64/libbase_tests/libbase_tests
Change-Id: Ica9d211bcd039fcf83a22fd494816abd01b97aa3
2017-02-28 16:34:04 +00:00
Colin Cross e5dd37ec35 Merge "Move adb_dirname and adb_basename to libbase"
am: 5a8db38b01

Change-Id: Ie0eaffca15f0e85c9134352a09f2dab919801da7
2017-02-28 07:31:43 +00:00
Treehugger Robot 5a8db38b01 Merge "Move adb_dirname and adb_basename to libbase" 2017-02-28 07:28:54 +00:00
Steven Moreland 109aa756c3 Merge "Bluetooth hal: moved to vendor partition."
am: 1e48879b6c

Change-Id: I31882ff1aa217b3814972714cc89ab5f8e41d1a5
2017-02-28 04:04:06 +00:00
Treehugger Robot 1e48879b6c Merge "Bluetooth hal: moved to vendor partition." 2017-02-28 04:00:58 +00:00
Colin Cross 58021d15c9 Move adb_dirname and adb_basename to libbase
adb already provides an implementation of dirname and basename that
take and produce std::strings, move it into libbase so it can be
used in the implementation of GetExecutableDirectory.

Test: out/host/linux-x86/nativetest64/adb_test/adb_test
Test: out/host/linux-x86/nativetest64/libbase_test/libbase_test
Test: adb shell /data/nativetest64/libbase_test/libbase_test64
Change-Id: Ideb1627607b14562121316d4ed27fa6fb0930684
2017-02-27 18:18:31 -08:00
Steven Moreland 18676b2ca8 Bluetooth hal: moved to vendor partition.
Bug: 35328775
Test: works in both binderized and passthrough modes
Merged-In: I61f1ff6b777089d7aad5184c0aee4f653897b32e
Change-Id: I61f1ff6b777089d7aad5184c0aee4f653897b32e
2017-02-28 01:34:59 +00:00
Bowgo Tsai 0d0519c98c Merge "init: early_mount: removing hard-coded paths"
am: f719c255fa

Change-Id: I411e9fde0f78ad42386ab80506f40a30f7ba0848
2017-02-28 01:34:23 +00:00
Treehugger Robot f719c255fa Merge "init: early_mount: removing hard-coded paths" 2017-02-28 01:29:13 +00:00
Greg Hackmann c2e2f36f63 Merge changes Iede18a00,Ib0fa24fb,Ic4c8a137
am: dfbae6ddbb

Change-Id: Ie64621b4538ca8fd798056e4970241ca0c5ba2ea
2017-02-28 00:14:49 +00:00
Treehugger Robot dfbae6ddbb Merge changes Iede18a00,Ib0fa24fb,Ic4c8a137
* changes:
  libcutils: build tests with -Wall -Wextra -Werror
  libcutils: fix socket type in SocketsTest.TestGetLocalPort
  libcutils: fix Wsign-compare warnings in multiuser_test
2017-02-28 00:11:07 +00:00
Greg Hackmann 5fb6ef6b7a Merge changes Ie9dd5d5d,Ifc6038c1
am: 0cde0eae09

Change-Id: Ie402e720388b35daed0f704992686f4b84bc5736
2017-02-28 00:10:47 +00:00
Treehugger Robot 0cde0eae09 Merge changes Ie9dd5d5d,Ifc6038c1
* changes:
  libadf: convert to C++
  libadf: adf_test: fix crash on adf.devices failure
2017-02-28 00:07:52 +00:00
Alex Klyubin 94259da99f Merge "Make secilc accessible by root only"
am: e803818832

Change-Id: I66c3bcf5f853ba90f1edcb6fb68d8d643cd25acf
2017-02-27 23:23:50 +00:00
Treehugger Robot e803818832 Merge "Make secilc accessible by root only" 2017-02-27 23:20:59 +00:00
Ryan Campbell 0b36473272 Add global GCOV_PREFIX option.
When native coverage is enabled, add a global GCOV_PREFIX
environment variable specifying that gcda files be output
with path prefix /data/local/tmp.

Bug: 35635587
Test: make NATIVE_COVERAGE=true; check init.environ.rc
Change-Id: I40972aea3ca3168d0687bdc93e9d4b7b3a1071b9
2017-02-27 15:00:18 -08:00
Sandeep Patil 5cdbcbbcbf Merge "fs_mgr: make is_device_secure() work even in the absence of properties."
am: 0026f1e693

Change-Id: I9646c86bbed9a4da3b976d319549621fb7a16974
2017-02-27 22:45:10 +00:00
Treehugger Robot 0026f1e693 Merge "fs_mgr: make is_device_secure() work even in the absence of properties." 2017-02-27 22:42:33 +00:00
Alex Klyubin 3380927e71 Make secilc accessible by root only
There's no reason for SELinux policy compiler to be accessible by
anybode other than root.

Test: Device boots -- secilc isn't used yet anyway
Bug: 31363362
Change-Id: I26cf34f1412b8dd471f79271c491b473617a6df6
2017-02-27 13:27:58 -08:00
Sandeep Patil e7a1b3757f fs_mgr: make is_device_secure() work even in the absence of properties.
During early mount property area is not initialized, and as a result an
'eng' build will always incorrectly be detected as a 'secure' build by
early mount code path resulting into verity error and consequent boot
loop.

The change here makes sure the is_device_secure() check works with /
without properties based on the 'eng' build based build flag so the
early mount code works fine both ways.

Bug: 35791581
Bug: 27805372

Test: Boot sailfish-{eng,userdebug} builds successfully w/ early
mount enabled

Change-Id: Icd101ccad56b669f49b60bbb3005d5be9f53b02b
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-02-27 12:46:18 -08:00
Bowgo Tsai d4beed22e8 init: early_mount: removing hard-coded paths
Current early mount has some hard-coded paths that are not easy to extend
when we switch verified boot to AVB (external/avb/libavb). This CL uses some
C++ containers to replace those fixed paths.

Bug: 33254008
Test: early mount /vendor with dm-verity on sailfish
Test: early mount /vendor without dm-verity on sailfish
Test: early mount /vendor with dm-verity on bullhead

Change-Id: I32a22fe486d7649e33bb23c9018ddc0428df6069
2017-02-27 13:09:06 +08:00
Wei Wang be838ae027 Merge "fs_mgr: fix const parameter in fs_mgr_do_tmpfs_mount"
am: 7a5d535cd2

Change-Id: I13b2cc4c792f8165d81d503eefc9d86e93ba7903
2017-02-25 05:14:55 +00:00
Treehugger Robot 7a5d535cd2 Merge "fs_mgr: fix const parameter in fs_mgr_do_tmpfs_mount" 2017-02-25 05:11:04 +00:00