From 0d6d42041f0790f2a550781e1c6b098118376c57 Mon Sep 17 00:00:00 2001 From: Jakob Bornecrantz Date: Mon, 22 May 2023 22:30:03 +0100 Subject: [PATCH] c/multi: Try to set realtime priority on main thread --- src/xrt/compositor/multi/comp_multi_system.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/xrt/compositor/multi/comp_multi_system.c b/src/xrt/compositor/multi/comp_multi_system.c index 6a24ec91d..8dc4106eb 100644 --- a/src/xrt/compositor/multi/comp_multi_system.c +++ b/src/xrt/compositor/multi/comp_multi_system.c @@ -8,6 +8,8 @@ * @ingroup comp_multi */ +#include "xrt/xrt_config_os.h" + #include "os/os_time.h" #include "os/os_threading.h" @@ -19,6 +21,10 @@ #include "util/u_trace_marker.h" #include "util/u_distortion_mesh.h" +#ifdef XRT_OS_LINUX +#include "util/u_linux.h" +#endif + #include "multi/comp_multi_private.h" #include "multi/comp_multi_interface.h" @@ -422,6 +428,11 @@ multi_main_loop(struct multi_system_compositor *msc) U_TRACE_SET_THREAD_NAME("Multi Client Module"); os_thread_helper_name(&msc->oth, "Multi Client Module"); +#ifdef XRT_OS_LINUX + // Try to raise priority of this thread. + u_linux_try_to_set_realtime_priority_on_thread(U_LOGGING_INFO, "Multi Client Module"); +#endif + struct xrt_compositor *xc = &msc->xcn->base; // For wait frame.