commit | 3f2df67255fe2c99f076480c2c6c2ab3b13e6428 | [log] [tgz] |
---|---|---|
author | Yifan Hong <elsk@google.com> | Wed Mar 15 11:00:28 2017 -0700 |
committer | gitbuildkicker <android-build@google.com> | Thu Mar 16 18:18:37 2017 -0700 |
tree | 3e74b4944578a0a86bc9121573aaec85ec4d999b | |
parent | cef70f2a3160d8463dc9ed6b0fb512203561c676 [diff] |
getService should retry if getting nullptr for transport == hwbinder / toggled only. If a service is dead but hwservicemanager has not receive the death notification yet, getService retrieved the service, called interfaceChain() into it, failed, and returned nullptr. With this change, getService retries until it gets an alive service from hwservicemanager. For transport == passthrough, the logic is not touched. Refactored getService so that the code is easier to read. Bug: 36153684 Test: killing system_server on the phone, logging shows that getService actually retries, and audio still works without the workaround. Change-Id: Ib380d3f6665d7b3ff0cfb77c16f5b09f20003c00 (cherry picked from commit 64ba3d79879ac8bb406f29ef1a7a52a67d2b8f65)
croot make hidl-gen
hidl-gen -o output-path -L language (-r interface-root) fqname output-path: directory to store the output files. language: output file for given language. e.g.c++, vts.. fqname: fully qualified name of the input files. For singe file input, follow the format: package@version::fileName For directory input, follow the format: package@version interface-root(optional): prefix and root path for fqname. If not set, use the default prefix: android.hardware and default root path defined in $TOP. examples: croot hidl-gen -o output -L c++ -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport android.hardware.nfc@1.0::INfc.hal hidl-gen -o output -L vts -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport android.hardware.nfc@1.0 hidl-gen -o test -L c++ -r android.hardware:hardware/interfaces -r android.hidl:system/libhidl/transport android.hardware.nfc@1.0