f0a7bd033941e26e380232a0515e903cf8e678e5 |
|
01-Apr-2017 |
Alex Vakulenko <avakulenko@google.com> |
pdx: Rework error reporting when transfering file and channel handles There is a lot of confusion about reporting errors when passing file and channel handles over PDX transport between client and service. Methods like Message::PushFileHandle return an integer which means both a file handle reference value (if positive) and a possible error code (if negative). But file handles could contain negative values too (when they are empty). This is used frequently when passing buffer fences around (when a fence is not being used, its fd is set to -1). This results in a special case of when PushFileHandle is called with a file handle with value of -1, the return value is actually "-errno" which becomes dependent on a global state (errno is not set by PushFileHandle itself in case file handle value is negative) and results in unpredicted behavior (sometimes errno is 0, sometimes its >0). Cleaned this all up by using Status<T> everywhere we used an int to pass value payload along with possible error code. Now the semantics of the calls are more clear. Bug: 36866492 Test: `m -j32` for sailfish-eng succeeds Ran unit tests on device (pdx_tests, libpdx_uds_tests, bufferhub_tests, buffer_hub_queue-test, buffer_hub_queue_producer-test), all pass Ran CubeSea, NativeTreasureHunt and Ithaca on Sailfish with vrflinger enabled, was able to use controller and screen rendered correctly. Change-Id: I0f40c3f356fcba8bc217d5219a0ddf9685e57fd7
/frameworks/native/libs/vr/libpdx/private/pdx/rpc/remote_method.h
|
e15bb2b16c70efa725bb0462e3c3c23cd4461fe2 |
|
21-Mar-2017 |
Corey Tabaka <eieio@google.com> |
libpdx: Remove superfluous DispatchRemoteMethod overloads. The introduction of RemoteMethodReturn<>() properly handles the differences between most of these overloads. Remove the ones that are now obsolete in favor of the generic version. Bug: None Test: make -j30 Change-Id: I23e63431e9f668c324b408707ce65e7d6aee69c8
/frameworks/native/libs/vr/libpdx/private/pdx/rpc/remote_method.h
|
e19fc9ebfa0c7098ded7463f45bfbdde5ce3e130 |
|
18-Mar-2017 |
Corey Tabaka <eieio@google.com> |
libpdx: Add support for Status<T> return type from message handlers. Add support for returning Status<T> from a message handler for a remote method protocol with return type T. This greatly simplifies error reporting logic in message handler methods. Bug: None Test: mm -j30; tests added to libpdx_uds in a follow up CL Change-Id: Ib84e1ddc1f1c6a6d57b35ffada06f94a28e8e0cc
/frameworks/native/libs/vr/libpdx/private/pdx/rpc/remote_method.h
|
86d064c9a5412d7a392e558e82ac18806b4b6bff |
|
17-Mar-2017 |
Hendrik Wagenaar <hendrikw@google.com> |
fix remote_method type conversion for channal handles * Required for upcoming change that mixes borrowed and local channel handles Bug: None Test: None Change-Id: I2efd874d975913133e89eb596af3cc69e793be6b
/frameworks/native/libs/vr/libpdx/private/pdx/rpc/remote_method.h
|
e4eec20f6263f4a42ae462456f60ea6c4518bb0a |
|
27-Jan-2017 |
Alex Vakulenko <avakulenko@google.com> |
Add DaydreamVR native libraries and services Upstreaming the main VR system components from master-dreamos-dev into goog/master. Bug: None Test: `m -j32` succeeds. Sailfish boots and basic_vr sample app works Change-Id: I853015872afc443aecee10411ef2d6b79184d051
/frameworks/native/libs/vr/libpdx/private/pdx/rpc/remote_method.h
|