a8049a284ecf3eafddbacf5230b0fefe85de8446 |
|
29-Mar-2018 |
Jiwen 'Steve' Cai <jwcai@google.com> |
bufferhubd: Implement more DetachedBuffer logic 1/ Separate DetachedBuffer related logic into a dedicated subclass of BufferHubRPC. This actually is the right thing to do as it utilizes the PDX's client/service programming pattern better. 2/ Add IsValid() check for the DetachedBufferChannel object. 3/ Add BufferHubClient to handle general PDX operations. 4/ Add DetachedBuffer which composites a BufferHubClient. 5/ Fully functional logic of allocating a DetachedBuffer, converting it to a BufferHub-backed GraphicBuffer, then converting it back to a DetachedBuffer. Bug: 38137191 Bug: 70046255 Bug: 70912269 Test: buffer_hub-test Change-Id: I81bf9259cbbaeb29a6df2769363b5a03464e7864
/frameworks/native/libs/vr/libpdx/client.cpp
|
5a244ed36c8e45fd95b89ff916caf083fb182ec1 |
|
10-Jun-2017 |
Alex Vakulenko <avakulenko@google.com> |
libudx: Move ServiceDispatcher from libpdx_uds to libpdx The two separate implementations of ServiceDispatcher for UDS and ServiceFS are practically identical. Moved the implementation into the base libpdx lib, and removed the transport-specific versions. Bug: None Test: `m -j32` succeeds; pdx_tests, pdx_servicefs_tests, pdx_uds_tests pass Change-Id: I2344f4f23bc3da27eb7b192344844b87660e8610
/frameworks/native/libs/vr/libpdx/client.cpp
|
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/client.cpp
|
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/client.cpp
|