Jakob Bornecrantz
83b77285bd
ipc: Use check helpers in other client code as well
2023-11-14 01:20:51 +00:00
Jakob Bornecrantz
bfaf615d4f
ipc: Replace IPC_CHK_CALL macro with other helper
2023-11-14 01:20:51 +00:00
Jakob Bornecrantz
8d61577081
ipc: Add xrt check return helpers
2023-11-14 01:20:51 +00:00
Jakob Bornecrantz
440b1f2660
ipc: Add ipc_print_result helper
2023-11-14 01:20:51 +00:00
Jakob Bornecrantz
4a8400538c
ipc: Use message channel's log_level in client
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
2d7041c797
ipc: Move ipc_message_channel functions to own files
...
What actually happened:
copy src/xrt/ipc/shared/{ipc_utils.h => ipc_message_channel.h} (95%)
rename src/xrt/ipc/shared/{ipc_utils_unix.c => ipc_message_channel_unix.c} (99%)
rename src/xrt/ipc/shared/{ipc_utils_windows.cpp => ipc_message_channel_windows.cpp} (99%)
rewrite src/xrt/ipc/shared/ipc_utils.h (94%)
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
850e57a002
ipc: Move non-channel functions to utils [NFC]
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
5dfdab9e80
ipc: Split UNIX and Windows utils implementations more
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
5e92df460d
ipc: Tidy Windows utils file [NFC]
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
f0c2167fb8
ipc: Tidy UNIX utils files [NFC]
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
a339d7adf4
ipc: Remove unused function [NFC]
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz
cec787ba0f
ipc: Add variable number of views get function
2023-11-09 18:37:47 +00:00
Jakob Bornecrantz
7251417569
ipc: Add functions to lock/unlock the client connection
2023-11-09 17:56:27 +00:00
Jakob Bornecrantz
e576424995
ipc: Add ability to do variable length calls
2023-11-09 17:56:27 +00:00
Jakob Bornecrantz
6d990ba480
ipc: Refactor proto generation a little bit
2023-11-09 17:49:35 +00:00
Jakob Bornecrantz
60bbded2e2
ipc: Remove left over static roles
2023-11-07 22:57:44 +00:00
Jakob Bornecrantz
332b32b71f
ipc: Refactor and tidy client connection
...
Also move git hash check as early as possible.
2023-11-03 18:18:31 +00:00
Jakob Bornecrantz
bfffb0c5c4
ipc: Constify client connection argument
2023-11-03 18:18:31 +00:00
Jakob Bornecrantz
05d04b3ea0
ipc: Fix compile on musl
2023-11-02 15:06:02 +00:00
Hui Xu
7c6b0d1e98
ipc: Add macro TEMP_FAILURE_RETRY
...
- to ignore the signal -4 (ENTR)
2023-11-02 14:25:21 +00:00
Jakob Bornecrantz
c5f4f0ab7a
xrt: Remove old roles
...
Also remove all fallbacks helpers now.
2023-10-24 09:24:49 +00:00
Korcan Hussein
60ae73f571
ipc: Add support for dynamic device roles
2023-10-24 09:24:49 +00:00
Nico Marniok
2718f0506e
xrt: Add dynamic roles to xrt_system_devices
...
Doesn't fully remove the old way yet.
Co-authored-by: Korcan Hussein <korcan.hussein@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-10-24 09:24:49 +00:00
Christoph Haag
ef47498137
ipc: Fix session deactivation negative array index access
...
It is possible for s->global_state.active_client_index to be -1 when
update_server_state_locked is called:
ipc_server_activate_session is only called from
ipc_handle_compositor_predict_frame, which is only called from
ipc_compositor_wait_frame.
So it is possible to deactivate a session that was never activated.
2023-10-19 15:37:01 +02:00
Jakob Bornecrantz
82192a43f9
ipc: Generate limited unique ids for native swapchains
2023-09-21 22:34:06 +01:00
Jiali Zhang
81a094f990
ipc: Add support for thread hint function
2023-09-13 20:04:49 +01:00
Jakob Bornecrantz
3de99b63d9
ipc: Add a interface header for ipc_server_main[_android]
2023-09-13 17:33:55 +00:00
Jakob Bornecrantz
5be0767aa9
ipc: Add a interface header for ipc_instance_create
2023-09-13 17:33:55 +00:00
Jakob Bornecrantz
6b815eba51
ipc: Removed unused define [NFC]
2023-09-01 19:50:46 +01:00
Hui Xu
d5b9ae137e
ipc/android: Dup the fd from JVM and maintain it in native
...
- dup the fd in native part to avoid fd_san error
2023-08-22 18:54:26 +00:00
Jakob Bornecrantz
7dae8d1ddd
ipc: Add a stable ID for clients
...
Co-authored-by: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
2023-07-18 17:33:52 +02:00
Jakob Bornecrantz
1920a9f0d7
ipc: Send less information when describing the client
2023-07-18 17:33:52 +02:00
Jakob Bornecrantz
2edf07749b
ipc: Rename client connected function and document code
2023-07-18 17:33:52 +02:00
huanchen
db230b3dcb
ipc: Unmap shared memory before destroy
2023-07-18 13:43:01 +01:00
Korcan Hussein
b6b5610c05
xrt|ipc|st/oxr: Adds support for XR_EXT_hand_interaction
profile.
2023-07-12 14:14:08 +01:00
Korcan Hussein
8865baafee
xrt: Plumbs enabled ext state for XR_EXT_eye_gaze_interaction
2023-06-29 00:31:58 +01:00
Ryan Pavlik
2c2aa92889
ipc: Factor out client connection setup and teardown for reuse.
2023-06-17 22:23:33 +01:00
Ryan Pavlik
684a3f22e4
ipc/client: Warning fix
2023-06-17 11:46:14 +01:00
Christoph Haag
6a01170b23
ipc: Transfer xdev serial over ipc
2023-06-14 01:02:07 +00:00
Robbie Bridgewater
28dc5747e2
ipc: Add more diagnostic info for first instance service failure
2023-06-14 01:01:49 +00:00
Drew Chien (Te-Ju)
96c88f488e
xrt: Add eye gaze defines and role
2023-06-13 01:31:11 +01:00
sdegrande
2f3f9e0cb9
build,a/{os,util},xrt,ipc: Fix compilation with Mingw64 on MSYS2
...
Main changes:
- use the pthread lib provided by Mingw64
- include windows.h where needed
- define XRT_ENV_MINGW
2023-06-05 12:03:47 -05:00
Korcan Hussein
17d8e010c8
xrt: App enabled extension state
...
Adds support for passing through which extensions an OpenXR client
has enabled to server for drivers/compositors to be able to query.
2023-05-25 23:20:38 +01:00
Ryan Pavlik
8603e5d63e
i/client: Fix return type incompatibility on Windows
2023-05-16 22:04:53 +00:00
samuel degrande
ea7ec1bda8
xrt: Fail to build with Clang 16
2023-05-16 14:25:36 +00:00
Jakob Bornecrantz
ca20f359b5
ipc: Allow UWP/AppContainer and others to connect
...
Including: UWP/AppContainer, Authenticated user and Administrator. Currently
guarded with IPC_RELAXED_CONNECTION_SECURITY env variable.
2023-05-06 16:21:30 +01:00
Jakob Bornecrantz
cfb63abac1
ipc: Do not leak arguments before fully having waited
2023-05-03 16:16:13 +01:00
Jarvis Huang
0d31791092
comp/android: Refine surface creation flow
...
Reuse MonadoView when "Display over other apps" is enabled. Move surface
creation logic to compositor for consistency. With this approach, compositor
implementer controls the way surface is created.
2023-04-18 16:24:35 -05:00
Jarvis Huang
d60db29295
aux/android: Refactor SystemUiController
2023-04-18 16:22:42 -05:00
Ryan Pavlik
9840730169
ipc/android: Run spotlessApply to format Java and Kotlin code
2023-04-17 10:58:38 -05:00