OSDN Git Service
Yu Ning [Wed, 26 Jul 2017 09:54:08 +0000 (17:54 +0800)]
Allow the use of a custom Android DT directory
On platforms that use ACPI instead of Device Tree (DT), such as
Ranchu x86/x86_64, /proc/device-tree/firmware/android/ does not
exist. As a result, Android O is unable to mount /system, etc.
at the first stage of init:
init: First stage mount skipped (missing/incompatible fstab in
device tree)
Those platforms may create another directory that mimics the layout
of the standard DT directory in procfs, and store early mount
configuration there. E.g., Ranchu x86/x86_64 creates one in sysfs
using information encoded in the ACPI tables:
https://android-review.googlesource.com/442472
https://android-review.googlesource.com/443432
https://android-review.googlesource.com/442393
https://android-review.googlesource.com/442395
Therefore, instead of hardcoding the Android DT path, load it from
the kernel command line using a new Android-specific property key
("androidboot.android_dt_dir"). If no such property exists, fall
back to the standard procfs path (so no change is needed for DT-
aware platforms).
Note that init/ and fs_mgr/ each have their own copy of the Android
DT path, because they do not share any global state. A future CL
should remove the duplication by refactoring.
With this CL as well as the above ones, the said warning is gone,
but early mount fails. That is a separate bug, though, and will be
addressed by another CL.
Test: Boot patched sdk_phone_x86-userdebug system image with patched
Goldfish 3.18 x86 kernel in patched Android Emulator, verify
the "init: First stage mount skipped" warning no longer shows
in dmesg.
Signed-off-by: Yu Ning <yu.ning@intel.com>
(cherry picked from commit
c08d2cb0fb7ce470e128c7571553aa12ae9b57a4)
Change-Id: Ia8d5f68e044fde0ecf5c7b14e40f040ff42bc35d
android-build-team Robot [Tue, 27 Jun 2017 22:39:52 +0000 (22:39 +0000)]
Merge cherrypicks of [
2467803,
2467786,
2467717,
2467598,
2467823,
2467734,
2467671,
2467718,
2467599,
2467753,
2467672,
2467600,
2467735,
2467841,
2467638,
2467824,
2467736,
2467754,
2467737,
2467674] into oc-release
Change-Id: Iaeea349ef72436af0b5da51537514d4fc64cbce0
Todd Poynor [Mon, 26 Jun 2017 21:34:38 +0000 (14:34 -0700)]
healthd: notify listeners using local copy of list, drop lock
Binder currently may service an incoming oneway transaction whenever
an outbound oneway call is made (if there is already a pending
incoming oneway call waiting). The unexpected nested method call
blocks forever on a recursive mutex acquire because healthd is single-
threaded. The binder behavior is considered a bug and may change in
the future. For now, work around this in healthd.
Make a local copy of the listeners list, then drop the lock and
perform the outbound calls on the local copy of the list.
Bug:
38201220
Test: Marlin with modified client calling scheduleUpdate() repeatedly
Change-Id: If35c2847556245921e2aff808ff747bb60356811
(cherry picked from commit
fd68370074fab549f569d8b9a5bf3d7c535c47bc)
android-build-team Robot [Fri, 23 Jun 2017 07:09:12 +0000 (07:09 +0000)]
release-request-
160c4b31-7fa0-4e2b-aabe-
85380836a1ce-for-git_oc-release-
4129081 snap-temp-L15300000077039010
Change-Id: I44c769e6ff6094f3027c33cfe3e1a017583d0679
Andreas Gampe [Fri, 23 Jun 2017 02:45:53 +0000 (19:45 -0700)]
Debuggerd: Extend crash_dump timeout to 5 seconds
Some processes have lots of threads and minidebug-info. Unwinding
these can take more than the original two seconds.
Bug:
62828735
Test: m
Test: debuggerd_test
Test: adb shell kill -s 6 `pid system_server`
Merged-In: I0041bd01753135ef9d86783a3c6a5cbca1c5bbad
Change-Id: I0041bd01753135ef9d86783a3c6a5cbca1c5bbad
(cherry picked from commit
b02851a984391d25bfc5b3094f281432906b47ed)
Logan Chien [Thu, 22 Jun 2017 11:36:14 +0000 (19:36 +0800)]
ld-config: Export android.hidl.memory@1.0-impl
This commit exports android.hidl.memory@1.0-impl.so from default linker
namespace to vndk (VNDK-SP) linker namespace. This fixes
libhidlmemory.so failure.
Note: Exposing android.hidl.memory@1.0-impl.so from default linker
namespace to vndk (VNDK-SP) linker namespace shall be fine because its
APIs are frozen and won't be changed in the future.
Note: android.hidl.memory@1.0-impl.so is NOT exported to sphal linker
namespace.
Bug:
35107583
Bug:
62778280
Test: Write a test SP-HAL lib which links libhidlmemory.so, load that
SP-HAL lib into system executable, and make sure mapMemory() works.
Test: sailfish boots w/o problems.
Merged-In: Ia36350dcf1f8c8dc6d7bf2c7a6ae65e0ebaef578
Merged-In: Iddb723558c3a814a905cd42797594a707bc651da
Change-Id: I69034595b2cd355e786ce7943fed7dddf1b12525
(cherry picked from commit
bd7503dae7008bfecbd729ba9e473c73ada17141)
(cherry picked from commit
3251e582f268b2b30a35e482e026fc9026b3956c)
android-build-team Robot [Thu, 22 Jun 2017 07:11:47 +0000 (07:11 +0000)]
release-request-
767e2998-9243-43e0-b656-
1acb30ac5115-for-git_oc-release-
4124637 snap-temp-L74200000076595014
Change-Id: Id2ae3574c07e26d407c05bf18d9a897001684e3d
TreeHugger Robot [Thu, 22 Jun 2017 05:07:13 +0000 (05:07 +0000)]
Merge "ld-config: Add HIDL memory libs to VNDK-SP" into oc-dev
Tom Cherry [Wed, 21 Jun 2017 18:18:23 +0000 (18:18 +0000)]
Merge "Revert "ueventd: remove PlatformDeviceList"" into oc-dev
Tom Cherry [Wed, 21 Jun 2017 18:10:53 +0000 (18:10 +0000)]
Revert "ueventd: remove PlatformDeviceList"
Bug:
62864413
This reverts commit
d43b615216fb1656fb5234e8202aa3ed7b37fda7.
Change-Id: If3d9060e723d6040d3f32f253b492131a56edb9f
Tom Cherry [Wed, 21 Jun 2017 18:10:47 +0000 (18:10 +0000)]
Revert "init: poll in first stage mount if required devices are not found"
Bug:
62864413
This reverts commit
5f4e8eac8a0db87a43ed7a930103f4241c22d479.
Change-Id: I6f35b920bb52875c8ef430d3e20b205fda5165e8
Logan Chien [Mon, 19 Jun 2017 10:30:49 +0000 (18:30 +0800)]
ld-config: Add HIDL memory libs to VNDK-SP
This commit adds libhidlmemory.so and android.hidl.memory@1.0.so to the
exported libs of the `vndk` linker namespace (aka. VNDK-SP). This is
necessary because some vendors' GLES implementation uses
libhidlmemory.so. Check http://b/
35107583#comment15 for the context.
Bug:
35107583
Test: sailfish boots
Merged-In: Idb5ba4ed4a89795e0e6105d55a84e7f6bbffff51
Merged-In: I1556b7499bd981af995f000519b7a314c70567d1
Change-Id: I5af7c954d432a2e8de6c6b744cedbada836bbd98
android-build-team Robot [Wed, 21 Jun 2017 07:11:28 +0000 (07:11 +0000)]
release-request-
5bf29450-4eb0-4d71-a15a-
d8858bf184d3-for-git_oc-release-
4120128 snap-temp-L37600000076154351
Change-Id: Icfb38e46cb517b62b9af2c95c4bbc2afc4c56084
Tom Cherry [Tue, 20 Jun 2017 01:08:39 +0000 (18:08 -0700)]
init: poll in first stage mount if required devices are not found
First stage mount in init currently attempts to regenerate uevents for
specific devices to create the corresponding dev nodes. However, this
is racy as first stage mount happens early in the boot process and
it's possible that some of these devices have not yet been created by
the kernel.
To fix this issue, init will poll on the uevent socket for up to 10
seconds waiting for the kernel to create the required device. It will
return false and panic if this 10 second timeout passes.
Note that the same uevent socket is used in the uevent regeneration
and the polling code, so there is no race if the device is created
after the uevent regeneration and before polling starts; the first
poll will pick up the device.
Bug:
62681642
Bug:
62682821
Test: Boot bullhead
Test: Boot sailfish
Test: Boot hikey + hotplug/unplug sdcard
Merged-In: I4a6ff043eb7115b729ca4954ebc6c9e000132993
Change-Id: I4a6ff043eb7115b729ca4954ebc6c9e000132993
Tom Cherry [Tue, 20 Jun 2017 00:41:41 +0000 (17:41 -0700)]
ueventd: remove PlatformDeviceList
In order to create symlinks for USB and block devices, the path for
their parent platform device must be known.
Previously, ueventd would save each platform device that it encounters
to a list and query this list when creating the symlinks. That,
however, is racy because the uevent socket does not differentiate
uevents from device_init() and uevents sent by the kernel when
probing a device first the first time. The below scenario is the
faulty case:
1) Kernel probes parent platform device for a block device
2) ueventd calls device_init() and starts processing uevents
3) Kernel probes block device and sends its uevents
4) ueventd picks up the block device uevent during its uevent processing,
without yet regenerating the platform device uevent, causing improper
symlinks to be created.
This change stops storing the platform devices in a list, and instead
traverses up the directory structure for each USB or block device
until it reaches a platform device, defined as one whose subsystem is
the platform bus. This fixes the race and simplifies the ueventd
code.
Bug:
62436493
Bug:
62681642
Test: Boot bullhead
Test: Boot sailfish
Test: Boot hikey + hotplug/unplug sdcard
Merged-In: I21636355d8e434f30e0cba568598a6cf139e67f9
Change-Id: I21636355d8e434f30e0cba568598a6cf139e67f9
android-build-team Robot [Wed, 14 Jun 2017 07:13:11 +0000 (07:13 +0000)]
release-request-
0b3ce0b0-0f38-494b-a590-
b594ba11c2d2-for-git_oc-release-
4098933 snap-temp-L41500000074000728
Change-Id: I65f09867239188cfcb2addfcec52eadb4e7b837a
Hung-ying Tyan [Wed, 14 Jun 2017 02:13:49 +0000 (02:13 +0000)]
Merge changes from topic 'move-default-prop-v2' into oc-dev
* changes:
Load /prop.default in recovery mode
Revert "Revert "Load default prop from /system/etc/prop.default""
Hung-ying Tyan [Tue, 13 Jun 2017 04:50:13 +0000 (12:50 +0800)]
Load /prop.default in recovery mode
Bug:
37815285
Bug:
62525809
Test: Tested with ag/
2398663 and ag/
2400523. Booted pixel phones,
checked the location of prop.default, verified the symlink,
checked a few properties via adb shell and manually tested
a few apps.
Booted to recovery and ran 'adb sideload' successfully.
Change-Id: I034b700fcd60b0104873131e94864b16ef4bd9f6
Hung-ying Tyan [Tue, 13 Jun 2017 03:23:06 +0000 (11:23 +0800)]
Revert "Revert "Load default prop from /system/etc/prop.default""
This reverts commit
98a73a2ce10df46bc8d095413b415e284206836b.
Bug:
37815285
Bug:
62525809
Test: Tested with ag/
2398663 and ag/
2400524. Booted pixel phones,
checked the location of pro.default, verified the symlink
at /default.prop, checked a few properties via adb shell and
manually tested a few apps.
Booted to recovery mode and ran 'adb sideload' successfully.
Change-Id: I407412a7002b898ffb352cb5f331cab9c15be39a
android-build-team Robot [Tue, 13 Jun 2017 07:09:46 +0000 (07:09 +0000)]
release-request-
7d12f16b-b4a7-4324-8b59-
be2d4e07dcb3-for-git_oc-release-
4094438 snap-temp-L80000000073561277
Change-Id: If4c878000ac88314a5d0c9b394fee0504c2c8f77
TreeHugger Robot [Tue, 13 Jun 2017 05:35:07 +0000 (05:35 +0000)]
Merge "tombstoned: log where we're writing the tombstone." into oc-dev
Josh Gao [Fri, 2 Jun 2017 20:02:10 +0000 (13:02 -0700)]
tombstoned: log where we're writing the tombstone.
Make it easy to find out where a specific crash's tombstone was written
to by adding a log.
Bug: http://b/
62268830
Test: crasher
Merged-In: I1961dfb19f76a42a8448ebafd4be153b73cb6800
Change-Id: I1961dfb19f76a42a8448ebafd4be153b73cb6800
(cherry picked from commit
cb68a0317d1d3f8a32a5fc87e93c1e7fc98a7d24)
android-build-team Robot [Mon, 12 Jun 2017 20:07:58 +0000 (20:07 +0000)]
Merge cherrypicks of [
2396133,
2396035,
2395977,
2395978] into oc-release
Change-Id: I68ba69d7159ebcc55bc66ff5fad9764c190448b1
Tao Bao [Mon, 12 Jun 2017 17:07:11 +0000 (17:07 +0000)]
Revert "Load default prop from /system/etc/prop.default"
This reverts commit
810d71b0050bb94fe9bbcd02368dafd52cebdeb7.
init fails to read default.prop under recovery:
init: Couldn't load properties from /default.prop: Too many symbolic links encountered
Bug:
62525809
Change-Id: I1f84a18e545e1307dcb230be51606cca731667f9
(cherry picked from commit
98a73a2ce10df46bc8d095413b415e284206836b)
Tao Bao [Mon, 12 Jun 2017 19:39:52 +0000 (19:39 +0000)]
Merge "Revert "Load default prop from /system/etc/prop.default"" into oc-dev
Tao Bao [Mon, 12 Jun 2017 17:07:11 +0000 (17:07 +0000)]
Revert "Load default prop from /system/etc/prop.default"
This reverts commit
810d71b0050bb94fe9bbcd02368dafd52cebdeb7.
init fails to read default.prop under recovery:
init: Couldn't load properties from /default.prop: Too many symbolic links encountered
Bug:
62525809
Change-Id: I1f84a18e545e1307dcb230be51606cca731667f9
android-build-team Robot [Sun, 11 Jun 2017 07:16:16 +0000 (07:16 +0000)]
release-request-
276f9f52-87fd-4915-bd79-
9a2f0ee77433-for-git_oc-release-
4090213 snap-temp-L31600000073091223
Change-Id: If83017b48c4e832c9b67121b052ec422effaa8dd
Hung-ying Tyan [Fri, 9 Jun 2017 08:04:34 +0000 (08:04 +0000)]
Merge "Load default prop from /system/etc/prop.default" into oc-dev
Hung-ying Tyan [Fri, 2 Jun 2017 10:59:46 +0000 (18:59 +0800)]
Load default prop from /system/etc/prop.default
/default.prop is moved to /system/etc/prop.default for full Treblized
devices. Modifies property_service to load it from there first.
Bug:
37815285
Test: Tested with ag/
2371424. Booted pixel phones, checked the location
of pro.default, verified the symlink at /default.prop, checked a
few properties via adb shell and manually tested a few apps.
Change-Id: I485231f21fc86b0aec58edf867e229a31e77d85e
android-build-team Robot [Thu, 8 Jun 2017 10:03:10 +0000 (10:03 +0000)]
release-request-
011e6329-d82e-4e46-980f-
68776b0cd6b9-for-git_oc-release-
4080367 snap-temp-L79900000072116775
Change-Id: I2d59ed7e882717d139b43f343713cda8d1542bc9
Logan Chien [Tue, 6 Jun 2017 14:30:59 +0000 (22:30 +0800)]
Add libion.so to vndk-sp
This commit adds libion.so to VNDK-SP so that some vendor's
gralloc.${chipset}.so can run without problems.
Bug:
62280700
Test: Boots a device from our partners
Merged-In: Ib745dfe52107d792296426b097e13b7c7755d88c
Merged-In: I2bcfe40ed9342de6d81dd310313e984a2c64964b
Change-Id: If30657b93157a2abea29fadcdb0004b37ad9eaf2
android-build-team Robot [Wed, 7 Jun 2017 08:03:41 +0000 (08:03 +0000)]
Merge "release-request-
0ddf2eab-ecaa-4014-951f-
9236b1e43859-for-git_oc-release-
4075595 snap-temp-L43000000071370789" into oc-release
android-build-team Robot [Wed, 7 Jun 2017 07:50:08 +0000 (07:50 +0000)]
release-request-
224b654d-e3ad-4f05-a95d-
d10d1516b3f6-for-git_oc-release-
4075622 snap-temp-L17600000071371496
Change-Id: Iab0a54a07b1afc29d891cbdad8521959b0abb544
android-build-team Robot [Wed, 7 Jun 2017 07:44:38 +0000 (07:44 +0000)]
release-request-
0ddf2eab-ecaa-4014-951f-
9236b1e43859-for-git_oc-release-
4075595 snap-temp-L43000000071370789
Change-Id: Iebaf88e4ba2ed80e816e12f538a7177e0758cfc9
Guang Zhu [Mon, 5 Jun 2017 21:39:25 +0000 (14:39 -0700)]
add component metadata tag to CTS liblog test acses
Bug:
36140955
Bug:
35360169
Test: new unit test to ensure that all modules have this field
Change-Id: I352145965e8cd20371ccce3ba2b25f3a166bc3e8
Merged-In: Ifb7a14817265b4624f1dc6414b547c86aafcf4ac
android-build-team Robot [Sun, 4 Jun 2017 07:11:21 +0000 (07:11 +0000)]
release-request-
777c0f47-a42e-446a-b45c-
0bb1aaa9612e-for-git_oc-release-
4066915 snap-temp-L92300000070444114
Change-Id: Ia07e7c7c7eae6f37b0a3e847df381232209632a5
Josh Gao [Thu, 1 Jun 2017 19:19:53 +0000 (12:19 -0700)]
debuggerd_client: increase pipe buffer size to max.
If a process tries to dump itself (e.g. system_server during ANRs),
crash_dump will block trying to write to its pipe if it's not
sufficiently large. Increase the pipe size to the max, and add a test
to make sure that it's always at least 1MB (the default value).
Bug: http://b/
38427757
Test: debuggerd_test
Merged-In: Iddb0cb1e5ce9e687efa9e94c2748a1edfe09f119
Change-Id: Iddb0cb1e5ce9e687efa9e94c2748a1edfe09f119
(cherry picked from commit
5675f3c321b7c6a9bbb2a7aacf18a01126f2f2cb)
Josh Gao [Thu, 1 Jun 2017 19:08:10 +0000 (12:08 -0700)]
crash_dump: don't notify ActivityManager if it crashed.
Bug: http://b/
38427757
Test: killall -ABRT system_server, plus added logging
Merged-In: Ic15e0b0870b1ec08a2f165ad0e5356afed02eece
Change-Id: Ic15e0b0870b1ec08a2f165ad0e5356afed02eece
(cherry picked from commit
b0e51e388b8c952e28280f0e7035dc18fb9aa4e5)
Josh Gao [Thu, 1 Jun 2017 18:55:25 +0000 (11:55 -0700)]
crash_dump: clear the signal mask.
crash_dump inherits its signal mask from the thread that forked it,
which always has all of its signals blocked, now that sigchain respects
sa_mask.
Manually clear the signal mask, and reduce the timeout to a
still-generous 2 seconds.
Bug: http://b/
38427757
Test: manually inserted sleep in crash_dump
Merged-In: If1c9adb68777b71fb19d9b0f47d6998733ed8f52
Change-Id: If1c9adb68777b71fb19d9b0f47d6998733ed8f52
(cherry picked from commit
e740250b9d966c7eb9a7959a47526906780d7715)
android-build-team Robot [Thu, 1 Jun 2017 07:11:12 +0000 (07:11 +0000)]
release-request-
18270495-77c6-4d95-8968-
eb22e3d2fe8b-for-git_oc-release-
4057656 snap-temp-L93200000069424216
Change-Id: Iaddcb53e511e2a44b7e393fdce4236839407913a
TreeHugger Robot [Wed, 31 May 2017 18:09:08 +0000 (18:09 +0000)]
Merge "init: allow ':' in property names" into oc-dev
android-build-team Robot [Wed, 31 May 2017 07:14:14 +0000 (07:14 +0000)]
release-request-
49d3fda6-f7aa-4b8d-aeeb-
eed9adb96e3c-for-git_oc-release-
4053943 snap-temp-L63500000069017893
Change-Id: Ie1ec03e1969d17d2782c85e29869f35ad0e41e98
TreeHugger Robot [Wed, 31 May 2017 07:01:38 +0000 (07:01 +0000)]
Merge "libvndksupport: Do not lookup default namespace for sphal failure" into oc-dev
Jayant Chowdhary [Wed, 31 May 2017 03:59:44 +0000 (03:59 +0000)]
Merge "Add vendor_available:true to libmemunreachable" into oc-dev
Jayant Chowdhary [Wed, 31 May 2017 03:59:44 +0000 (03:59 +0000)]
Merge "Mark libprocinfo vendor_avaialable." into oc-dev
Jayant Chowdhary [Wed, 31 May 2017 03:59:44 +0000 (03:59 +0000)]
Merge "Mark libion vendor_available." into oc-dev
Jayant Chowdhary [Wed, 31 May 2017 03:59:44 +0000 (03:59 +0000)]
Merge "Mark libdiskconfig vendor_available." into oc-dev
Jayant Chowdhary [Wed, 31 May 2017 03:59:44 +0000 (03:59 +0000)]
Merge "Mark libnetutils vendor_available." into oc-dev
Jayant Chowdhary [Wed, 31 May 2017 03:59:44 +0000 (03:59 +0000)]
Merge "Mark libmetricslogger vendor_available." into oc-dev
Jayant Chowdhary [Wed, 31 May 2017 03:59:44 +0000 (03:59 +0000)]
Merge "Mark libsuspend vendor_available." into oc-dev
Jayant Chowdhary [Wed, 31 May 2017 03:59:44 +0000 (03:59 +0000)]
Merge "Mark libsysutils vendor_available." into oc-dev
Jayant Chowdhary [Wed, 31 May 2017 03:59:44 +0000 (03:59 +0000)]
Merge "Mark libziparchive vendor_available." into oc-dev
Jayant Chowdhary [Wed, 17 May 2017 18:44:29 +0000 (11:44 -0700)]
Mark libnetutils vendor_available.
libneutils is a library which belongs to vndk-cap. Mark it
vendor_available to enable vndk abi stability checks on it.
Details: https://android-review.googlesource.com/368372
Test: mm -j64
Bug:
38244611
Merged-In: Ief58111dea549224b3bce5cb52fd691d4381fb88
Change-Id: I32938e3e0bcc1e771290d87f561cc06b9b019046
(cherry picked from commit
409731efc1fb2e0d1d339b20ca12c5790386801e)
Jayant Chowdhary [Tue, 16 May 2017 21:53:23 +0000 (14:53 -0700)]
Mark libsysutils vendor_available.
libsysutils belongs to vndk-cap. Mark it vendor_available to enable vndk
abi stability checks on it.
Details: https://android-review.googlesource.com/368372
Test: mm -j64
Bug:
38244611
Merged-In: Ib1490362c5c800e2bdc96ef06e607c93da1006b2
Change-Id: I3ef1d09c7e836549eb13ce68ac7cdcd5923bde0f
(cherry picked from commit
a1bdd2412e05a217a2c8bb1488050110b4568ed4)
Jayant Chowdhary [Tue, 16 May 2017 20:09:54 +0000 (13:09 -0700)]
Mark libziparchive vendor_available.
libziparchive is a library which belongs to vndk-cap. Mark it
vendor_available to enable header-abi-dumper's invocation to identify it
as a part of the vndk.
Details: https://android-review.googlesource.com/368372
Test: mm -j64
Bug:
38244611
Merged-In: Ic414d368d7043083ce9cf9c09d124fb700ac8866
Change-Id: Ibe490cc6c2cfca0f8d58df45317bb3a491d530f0
(cherry picked from commit
2c87bccf4610a877771641d9476d6fcc0c8db423)
Jayant Chowdhary [Wed, 17 May 2017 19:34:07 +0000 (12:34 -0700)]
Mark libion vendor_available.
libion belongs to vndk-cap. Mark it vendor_available to enable vndk
abi stability checks on it.
Details: https://android-review.googlesource.com/368372
Test: mm -j64
Bug:
38244611
Merged-In: I195145af90433c29ce9e408197e8d7183cb960bc
Change-Id: I8ac290d435b7c4dc5e669bfccb4562495ce92516
(cherry picked from commit
2e31a8c4f99454cc6ac5292c952fef7166614e5f)
Jayant Chowdhary [Wed, 17 May 2017 19:19:53 +0000 (12:19 -0700)]
Mark libdiskconfig vendor_available.
libdisckonfig is a library which belongs to vndk-cap. Mark it
vendor_available to enable vndk abi stability checks on it.
Details: https://android-review.googlesource.com/368372
Test: mm -j64
Bug:
38244611
Merged-In: I18ed695d6df0e9848e979ad15eb56fba8923726c
Change-Id: I079869f0120fa33893540b72044ddf25c1d04bf2
(cherry picked from commit
69d1a880977aab156eb94684a356c06c01b64c1f)
Jayant Chowdhary [Wed, 17 May 2017 18:54:23 +0000 (11:54 -0700)]
Mark libmetricslogger vendor_available.
libmetricslogger is a library which belongs to vndk-cap. Mark it
vendor_available to enable vndk abi stability checks on it.
Details: https://android-review.googlesource.com/368372
Test: mm -j64
Bug:
38244611
Merged-In: Id50e1bb8a7a4fecfde35a63439ac28b1be883e21
Change-Id: If4bb63d3769317bc7cfc0f2f326e8bdd7b565ebe
(cherry picked from commit
7f96d493705dd00757597018e6befa20b15bfc8b)
Jayant Chowdhary [Wed, 17 May 2017 21:15:06 +0000 (14:15 -0700)]
Mark libprocinfo vendor_avaialable.
libprocinfo belongs to vndk-cap. Mark it vendor_available to enable vndk
abi stability checks on it.
Details: https://android-review.googlesource.com/368372
Test: mm -j64
Bug:
38244611
Merged-In: I05212410225d4cdb0cfa9abbd8b81071c79667db
Change-Id: Ib79c7e3bdde1c7d3cd9f2bb95c284b4690a22ebb
(cherry picked from commit
4362e5b0f800c9aa5e11ed1e449dbe173a617a4d)
Jayant Chowdhary [Tue, 16 May 2017 22:04:53 +0000 (15:04 -0700)]
Mark libsuspend vendor_available.
libsuspend belongs to vndk-cap. Mark it vendor_available to enable vndk
abi stability checks on it.
Details: https://android-review.googlesource.com/368372
Test: mm -j64
Bug:
38244611
Merged-In: Id716171806d71fabd9a67aa6a60189f30a35d2e2
Change-Id: I2243c6d8710b6b2f80375849e82afba28a735507
(cherry picked from commit
e37259ec8b22ef7348806d14da7ace337e0a1041)
Vijay Venkatraman [Wed, 17 May 2017 22:04:23 +0000 (15:04 -0700)]
Add vendor_available:true to libmemunreachable
Bug:
38244611
Test: build sailfish
Merged-In: I5f238377784b3a30308e9e5cb0817c71675edddf
Change-Id: Ieb7fdcae4b96a1e1622ba98a7cfb56a95b798452
(cherry picked from commit
52eaeb48255082ceaafea20dd9339545b6174fb4)
TreeHugger Robot [Wed, 31 May 2017 00:26:11 +0000 (00:26 +0000)]
Merge "fix: ATRACE does not work for libs loaded in sphal namespace" into oc-dev
Tom Cherry [Tue, 30 May 2017 20:45:28 +0000 (13:45 -0700)]
init: allow ':' in property names
Bug:
62114389
Test: boot bullhead, get/set properties with ':' via command line
Test: trigger an init trigger with a property containing a ':'
Change-Id: Ib51853a1ef9d4f79d510c8175c0d9684e2025e23
(cherry picked from commit
1369379e33e89f034bc7e94b28d5cd240a2fdefe)
android-build-team Robot [Sun, 28 May 2017 07:23:38 +0000 (07:23 +0000)]
release-request-
fca2b5ac-03eb-4055-a549-
b4fc2b292b64-for-git_oc-release-
4049993 snap-temp-L04900000068539456
Change-Id: I1ee0acba51e4081ac5d7025d104bff5e3907f980
Jiyong Park [Fri, 26 May 2017 08:57:18 +0000 (17:57 +0900)]
fix: ATRACE does not work for libs loaded in sphal namespace
From O, libutils.so is loaded twice. Once in the default namespace and
once in the sphal namespace for vendor libs. However, since the
framework only communicates with the instance loaded in the default
namespace, report_sysprop_change() event is not notified to the instance
in sphal namespace. This causes ATRACE to not work for vendor libs
loaded in sphal namespace.
So, the instance loaded in default namespace now explicitly redirects
the event to the other instance.
Bug:
62084107
Test: start an app, run 'adb shell atrace gfx --stream'. atrace from the
graphics driver are visible.
Change-Id: Ia6c2ca6bcb9a8849ebb09b5c38d60480c92d4571
Sandeep Patil [Sat, 27 May 2017 01:09:06 +0000 (18:09 -0700)]
Respect that status property when parsing fstab from device tree
For an fstab entry in device tree, fs_mgr now honors the status property
as done by linux. i.e. the node (in this case, the fstab entry) is
enabled if status is not set, "ok" or "okay". For every other value, the
node is considered as disabled.
Bug:
62127741
Test: Test sailfish w/ no status property, result: boots
Test: Test with status = "disabled", result: skips mounting /vendor
Test: Test with status = "ok", result: boots
Change-Id: I5ff8f710de2c54afc76b4af28108ca9075357ad1
Signed-off-by: Sandeep Patil <sspatil@google.com>
Justin Yun [Mon, 22 May 2017 05:31:56 +0000 (14:31 +0900)]
libvndksupport: Do not lookup default namespace for sphal failure
Instead of looking up default namespace for the failure of loading
sphal libs, report failure. This is only for the devices that have
sphal namespace.
Bug:
38435840
Test: sailfish builds and boots
Test: libvndksupport-tests passes
Change-Id: Ibbff5f2d5d83f6482f98677a5492777db6416967
Merged-In: Ibbff5f2d5d83f6482f98677a5492777db6416967
(cherry picked from commit
17baed1012b6abd57e54caa902c0e28d9f0f087c)
Mark Salyzyn [Thu, 25 May 2017 16:58:04 +0000 (16:58 +0000)]
Merge "liblog: test: android_logger_get_ "kernel" log buffer can be empty" into oc-dev
Dimitry Ivanov [Thu, 25 May 2017 16:19:31 +0000 (16:19 +0000)]
Merge "Load vendor public libraries to sphal namespace" into oc-dev
android-build-team Robot [Thu, 25 May 2017 07:14:48 +0000 (07:14 +0000)]
release-request-
33b11ddd-d658-45bf-bdb2-
acceb024fe39-for-git_oc-release-
4042766 snap-temp-L87400000067730042
Change-Id: Ia102250281a9a60206be2503e08b0f740ee9c32b
TreeHugger Robot [Thu, 25 May 2017 01:49:00 +0000 (01:49 +0000)]
Merge "fs_mgr: fix SIGSEGV when ostream << nullptr" into oc-dev
Mark Salyzyn [Tue, 23 May 2017 20:59:42 +0000 (13:59 -0700)]
liblog: test: android_logger_get_ "kernel" log buffer can be empty
(cherry picked from commit
37eaefa9a0792ece4db77bbc0cf03cc0b6793c54)
If user build and for the "kernel" log buffer, allow an empty report.
Test: CTS: User: liblog#android_logger_get_
Test: remove ro.debuggable line from /default.prop,
run liblog-unit-tests --gtest_filter=*.android_logger_get_
Bug:
62030309
Change-Id: I5f91af07608988f322b3c46574becc308e1d8b13
Dimitry Ivanov [Mon, 1 May 2017 22:12:49 +0000 (15:12 -0700)]
Load vendor public libraries to sphal namespace
Load vendor public libraries to sphal namespace
if it exists - preserve old behavior of loading
these libraries to default namespace if sphal
namespace is not present on the device.
Bug: http://b/
37410104
Test: cts-tradefed run singleCommand cts --skip-preconditions -m CtsJniTestCases
on marlin (with enabled sphal configuration) and on angler where ld.config.txt
is not present.
Change-Id: Iaa3fa437ba2900acc2e5b9c78039fe1553e4c9dd
android-build-team Robot [Wed, 24 May 2017 17:51:38 +0000 (17:51 +0000)]
Merge "release-request-
aaaef485-cf88-426c-8186-
1f3903a60dd5-for-git_oc-release-
4038872 snap-temp-L67700000067294126" into oc-release
android-build-team Robot [Wed, 24 May 2017 17:09:13 +0000 (17:09 +0000)]
release-request-
2b4652df-202e-4cb9-bf98-
5bd21a9292d6-for-git_oc-release-
4038361 snap-temp-L17500000067353615
Change-Id: I2a4ad04d202c0978dc74e7e10f4951562bc19453
Bowgo Tsai [Wed, 24 May 2017 10:51:36 +0000 (18:51 +0800)]
fs_mgr: fix SIGSEGV when ostream << nullptr
fstab_rec.fs_options might be nullptr when printing error message.
Use android::base::StringPrintf() to '(null)' when needed.
Bug:
37759782
Test: Boot device and manaully trigger the output
Change-Id: I1bdf4ba57331aaea9dd5e790f6bf9d9b8bdc8b53
Merged-In: I1bdf4ba57331aaea9dd5e790f6bf9d9b8bdc8b53
(cherry picked from commit
59af33c9ed6f8436fae599c37f4b8e8e7e9b71fa)
Mark Salyzyn [Tue, 23 May 2017 20:21:46 +0000 (13:21 -0700)]
liblog: test: enoent requires userdebug or eng to run
(cherry picked from commit
38dad6c9e457b43968157f4df8ea8e83322189bd)
Bypass test if we do not have all the prerequisites to run this check
of liblog failure propagation. We need to be root, or be able to
call su, in order to temporarily stop logd to measure the error
response from liblog. Basically a "user" build can not have the
levers to deny or fail the logger, preventing our ability to run the
liblog.enoent test.
Test: CTS: User: liblog#enoent
Test: remove ro.debuggable line from /default.prop,
run liblog-unit-tests --gtest_filter=*.enoent
Bug:
62030441
Change-Id: I52177b8dd3c66d433bddf630e840ee088e13cddc
android-build-team Robot [Wed, 24 May 2017 14:21:17 +0000 (14:21 +0000)]
release-request-
aaaef485-cf88-426c-8186-
1f3903a60dd5-for-git_oc-release-
4038872 snap-temp-L67700000067294126
Change-Id: I29454a2375bf5dd41a07e7e76e19b732aaed6703
TreeHugger Robot [Wed, 24 May 2017 03:47:08 +0000 (03:47 +0000)]
Merge "Always print the initial bugreport progress message." into oc-dev
Felipe Leme [Tue, 23 May 2017 23:56:47 +0000 (16:56 -0700)]
Always print the initial bugreport progress message.
Otherwise, it might take seconds to display the initial percentage,
and the user might thing something is wrong and CTRL-C the process.
Fixes:
62003852
Test: added BugreportTest.OkProgressZeroPercentIsNotIgnored
Test: m -j32 adb_test && ./out/host/linux-x86/nativetest64/adb_test/adb_test --gtest_filter=BugreportTest.*
Change-Id: I8e7dbb28666c825c1408d5d204f813064fc3048f
(cherry picked from commit
e5d665b46f5bbc841ab3eeb2070f390932f1a239)
Sandeep Patil [Fri, 19 May 2017 20:22:51 +0000 (13:22 -0700)]
shell_and_utils: add vendor shell and toybox targets
Bug:
36463595
Test: Build and boot.
Change-Id: I245d1755546fa597e941badce251c2e8293e998e
Signed-off-by: Sandeep Patil <sspatil@google.com>
(cherry picked from commit
52b20877dc5c9dfcc7ba995c916490072e066b7b)
Elliott Hughes [Fri, 31 Mar 2017 06:21:36 +0000 (23:21 -0700)]
Switch to a shell_and_utilities phony module.
(cherrypick of
8ad0e66e77c795d11e9cd5c7b576eed0da60537e.)
Bug:
36463595
Test: builds
Change-Id: I700700abb4de76017a2ff811ceff19ea2ee86eb2
android-build-team Robot [Sun, 21 May 2017 07:15:09 +0000 (07:15 +0000)]
release-request-
c72e46fd-06a9-4104-bad3-
f7ba8aeb3e1d-for-git_oc-release-
4029917 snap-temp-L38800000066299680
Change-Id: I46629fa20326c688a8996373de3df34e937b5e33
android-build-team Robot [Fri, 19 May 2017 20:53:45 +0000 (20:53 +0000)]
Merge cherrypicks of [
2289986,
2289917,
2290002] into oc-release
Change-Id: I0892bffeaabaa345fa078c052f3759d1c3059641
Keun-young Park [Thu, 18 May 2017 20:28:32 +0000 (13:28 -0700)]
add ueventd to shutdown critial process
- In some devices, some drivers still try to load firmware while shutting
down, and crashes the kernel. So keep ueventd to prevent such case.
bug:
38203024
Test: reboots
(cherry picked from commit
7264bee975bdd35eac256e4939fa7dfd8962c2ac)
Change-Id: Ifc725f906de01eba552c782b8ec0d7bd11d089d0
(cherry picked from commit
9c91d9029487146ea86edf2e1242af28f5712451)
Thierry Strudel [Fri, 19 May 2017 18:07:43 +0000 (18:07 +0000)]
Merge "init.rc: import /vendor/etc/init/hw/init.${ro.hardware}.rc" into oc-dev
TreeHugger Robot [Fri, 19 May 2017 18:07:03 +0000 (18:07 +0000)]
Merge "Revert "Partial revert of "libcutils: fs_config.c mark vendor, odm and oem partitions in duplicate" Revert just the wifi hardware part."" into oc-dev
Mark Salyzyn [Fri, 19 May 2017 14:31:06 +0000 (14:31 +0000)]
Revert "Partial revert of "libcutils: fs_config.c mark vendor, odm and oem partitions in duplicate" Revert just the wifi hardware part."
This reverts commit
6db432daf7a8f199630c5b35c3cff57c566b68fa.
Test: Build
Bug:
37921982
Bug:
37483427
Bug:
37703469
Change-Id: Ie19221f4383a45e317bc0b190e9a70459706fc79
Yueyao Zhu [Thu, 18 May 2017 19:46:34 +0000 (12:46 -0700)]
init.rc: import /vendor/etc/init/hw/init.${ro.hardware}.rc
/init.${ro.hardware}.rc would sometime rely on being parsed before other
.rc files. In this case all vendors are still able to have a .rc file
included before all the ones in /vendor/etc/init.
Bug:
38301110
Change-Id: I3fb6df13a39204a516874ea94f5e5ad84bca42c6
Keun-young Park [Thu, 18 May 2017 20:28:32 +0000 (13:28 -0700)]
add ueventd to shutdown critial process
- In some devices, some drivers still try to load firmware while shutting
down, and crashes the kernel. So keep ueventd to prevent such case.
bug:
38203024
Test: reboots
(cherry picked from commit
7264bee975bdd35eac256e4939fa7dfd8962c2ac)
Change-Id: Ifc725f906de01eba552c782b8ec0d7bd11d089d0
android-build-team Robot [Thu, 18 May 2017 07:12:59 +0000 (07:12 +0000)]
release-request-
60f55d52-4657-4714-89dc-
b6443475d767-for-git_oc-release-
4022373 snap-temp-L45500000065414617
Change-Id: I0c65e9aa7ce5863b5bd9d58809abc096514ef4c5
Jiyong Park [Tue, 9 May 2017 06:07:43 +0000 (15:07 +0900)]
Allow vndk-sp to be extended by vendors
Exteded vndk-sp should go to /vendor/lib/vndk-sp.
Bug:
37940694
Test: sailfish builds and boots
Test: manually copying a lib from /system/lib/vndk-sp to
/vendor/lib/vndk-sp. Check that the copied one in /vendor partition is
loaded instead of the original one.
Change-Id: Ia5dd6f35bd31d4a20a794bec148e1fc3c6d7b72b
android-build-team Robot [Wed, 17 May 2017 07:18:09 +0000 (07:18 +0000)]
release-request-
6c498b17-9310-412b-ad36-
3dcf25ffef73-for-git_oc-release-
4017086 snap-temp-L16500000064871237
Change-Id: I651e73171ac4ce35e1edee756bb0f610a8120537
TreeHugger Robot [Wed, 17 May 2017 03:22:26 +0000 (03:22 +0000)]
Merge "Change the CHECK failure into function failure." into oc-dev
TreeHugger Robot [Wed, 17 May 2017 02:26:00 +0000 (02:26 +0000)]
Merge "Use SO_SNDBUFFORCE instead of SO_SNDBUF" into oc-dev
TreeHugger Robot [Wed, 17 May 2017 01:53:55 +0000 (01:53 +0000)]
Merge changes from topic 'synchronize_vndk-sp' into oc-dev
* changes:
add libvndksupport.so to ll-ndk
libbacktrace is VNDK-SP
add libvndksupport
Daichi Hirono [Fri, 12 May 2017 07:24:48 +0000 (16:24 +0900)]
Change the CHECK failure into function failure.
Previously we have CHECK in WriteInternal function to observe short
writing. However it turns out short write can happen according to the
bug report.
To prevent app from crashing due to CHECK failure, the CL removes the
CHECK and let WriteInternal return a failure value.
Bug:
37561460
Test: libappfuse_tests, manually re-wrote the return value of write()
and checked logcat.
Change-Id: I6a1e233c3ddb8eb68f59e7c606ad0459b5ca2c6e
Vijay Venkatraman [Tue, 16 May 2017 18:51:09 +0000 (11:51 -0700)]
Add vendor_available:true to libcrypto_utils
Bug:
38244611
Test: build sailfish
Change-Id: Ieaaf9e03a63124cd1bb79d4c8f6e5d5d4cc7d94b
android-build-team Robot [Tue, 16 May 2017 07:34:57 +0000 (07:34 +0000)]
release-request-
ad2b7abc-f489-4c21-891e-
cb2cf48c6370-for-git_oc-release-
4012004 snap-temp-L44000000064332402
Change-Id: I4fb2443de3d77a9737eec6451e611c1ccbd310ea
Bowgo Tsai [Mon, 8 May 2017 12:45:50 +0000 (20:45 +0800)]
first stage mount: removing the requirement of by-name prefix for AVB
Current first stage mount for AVB requires specifying a common prefix of
by-name symlink for all AVB partitions. It limits all AVB partitions to be on
the same block device.
firmware {
android {
compatible = "android,firmware";
vbmeta {
compatible = "android,vbmeta";
parts = "vbmeta,boot,system,vendor";
by_name_prefix="/dev/block/platform/soc.0/
f9824900.sdhci/by-name" <-- *removing this*
};
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,avb";
};
};
};
};
For normal mount with AVB, it extracts the by-name prefix of /misc
partition and use it as the prefix for all other partitions:
- /dev/block/platform/soc.0/
f9824900.sdhci/by-name/misc ->
- /dev/block/platform/soc.0/
f9824900.sdhci/by-name/vendor_a
Fix this by adding an internal map in FsManagerAvbOps to record the mapping
from partition name to its by-name symlink:
ByNameSymlinkMap["vendor_a"] = "/dev/block/platform/soc.0/
f9824900.sdhci/by-name/vendor_a"
Two overloaded factory methods are then provided for FsManagerAvbUniquePtr:
- FsManagerAvbUniquePtr Open(ByNameSymlinkMap&& by_name_symlink_map):
for first stage mount, where the by-name symlink map will be
constructed externally, from the uevents processed by init, before
invoking this factory method.
- FsManagerAvbUniquePtr Open(const fstab& fstab): for normal mount,
where the by-name symlink map will be constructed from the input fstab
internally.
Bug:
37552224
Test: first stage mount /vendor with vboot 1.0
Test: first stage mount /vendor with vboot 2.0 (AVB)
Test: normal mount /vendor with vboot 2.0 (AVB)
Change-Id: Id17e8566da87ea22b8923fcd6e47db8d45bc7d6a
Merged-In: Id17e8566da87ea22b8923fcd6e47db8d45bc7d6a
(cherry picked from commit
20651f62d081c88596e70b3b589863a75e2a9c35)