fd22b3e5ad1aae1fc3de54801f33466db3c9b3fe |
|
18-Apr-2017 |
Alex Vakulenko <avakulenko@google.com> |
libpdx_uds: Serialize access to connection socket between threads Added a mutex to allow only one client thread to perform atomic send-request/receive-responce actions. Also added a unit test that perfroms multiple parallel client requests to the same service to ensure it can handle multithreaded access correctly. Bug: 37443070 Test: `libpdx_uds_tests` pass Change-Id: Ica516f7806f9146fb530b5cb371d2ee89146fed7
/frameworks/native/libs/vr/libpdx_uds/client_channel.cpp
|
09aa736ee6136787b18807d7ab459feba23cec04 |
|
06-Apr-2017 |
Alex Vakulenko <avakulenko@google.com> |
libpdx_uds: Fix RPC channel ID allocation to not recycle values as often The value of channel ID for PDX service on UDS transport was actual file descriptor value for the data socket. Since channels are open and closed constantly, it is quite often that channel ID is being reused immediately, so it is almost impossible to use `cid` as unique identifier for objects being passed around. Instead, we now use monotonically growing channel ID value. To prevent the possibility of using channel ID as the socket FD and vice versa, changed all helper functions that used to take socket_fd as an int to explicitly use BorrowedHandle which disables implicit conversion from int (and hence makes it impossible to mistakenly pass in the channel ID). Bug: 37082296 Test: `m -j32` succeeds for sailfish-eng Ran libpdx_uds_tests on the device -> all pass Device boots and CubeSea and VrHome render correctly with vr_flinger Change-Id: Ibb8dfee4d6c3f4b6120c0b6e20a253f1b9307c19
/frameworks/native/libs/vr/libpdx_uds/client_channel.cpp
|
6890d95ec8b96970202518b439bfa8ab2d9dbf77 |
|
20-Jan-2017 |
Corey Tabaka <eieio@google.com> |
libpdx: Add support for more event bits. - Add generic abstraction for multiple event bits with an implementation- defined mechanism to deliver the bits. - Update ServiceFS backend to pass through event bits. - Implement EPOLLIN, EPOLLPRI, and EPOLLHUP event bit for UDS backed. Bug: 34466748 Test: Build/flash system; observe stable operation. Change-Id: I86afb5645b72ec69c095734c7891a690432150a3
/frameworks/native/libs/vr/libpdx_uds/client_channel.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_uds/client_channel.cpp
|