From dff77aae27cf064941798c066a248283b1996318 Mon Sep 17 00:00:00 2001 From: Yuxuan Shui Date: Sat, 10 Feb 2024 20:29:39 +0000 Subject: [PATCH] core: use pthread_setschedparam across the board I think I was trying to avoid introducing pthread as a dependency, but now we are using pthread for SGI_video_sync thread anyway. Let's remove the ifdefs. Signed-off-by: Yuxuan Shui --- src/meson.build | 8 ++------ src/picom.c | 16 ++-------------- 2 files changed, 4 insertions(+), 20 deletions(-) diff --git a/src/meson.build b/src/meson.build index b9a5a771..dd10eaec 100644 --- a/src/meson.build +++ b/src/meson.build @@ -23,7 +23,7 @@ required_xcb_packages = [ # Some XCB packages are here because their versioning differs (see check below). required_packages = [ 'pixman-1', 'x11', 'x11-xcb', 'xcb-image', 'xcb-renderutil', 'xcb-util', - 'xext' + 'xext', 'threads', ] foreach i : required_packages @@ -59,7 +59,7 @@ endif if get_option('opengl') cflags += ['-DCONFIG_OPENGL', '-DGL_GLEXT_PROTOTYPES'] - deps += [dependency('gl', required: true), dependency('egl', required: true), dependency('threads', required:true)] + deps += [dependency('gl', required: true), dependency('egl', required: true)] srcs += [ 'opengl.c' ] endif @@ -86,10 +86,6 @@ elif (host_system == 'freebsd' or host_system == 'netbsd' or cflags += ['-DHAS_KQUEUE'] endif -if host_system == 'openbsd' - deps += [dependency('threads', required: true)] -endif - subdir('backend') picom = executable('picom', srcs, c_args: cflags, diff --git a/src/picom.c b/src/picom.c index c2c17e28..cdacf75d 100644 --- a/src/picom.c +++ b/src/picom.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -35,9 +36,6 @@ #include #include #include -#ifdef __OpenBSD__ -#include -#endif #include #include @@ -2590,14 +2588,8 @@ void set_rr_scheduling(void) { int ret; struct sched_param param; - -#ifndef __OpenBSD__ - ret = sched_getparam(0, ¶m); -#else int old_policy; ret = pthread_getschedparam(pthread_self(), &old_policy, ¶m); -#endif - if (ret != 0) { log_debug("Failed to get old scheduling priority"); return; @@ -2605,12 +2597,7 @@ void set_rr_scheduling(void) { param.sched_priority = priority; -#ifndef __OpenBSD__ - ret = sched_setscheduler(0, SCHED_RR, ¶m); -#else ret = pthread_setschedparam(pthread_self(), SCHED_RR, ¶m); -#endif - if (ret != 0) { log_info("Failed to set real-time scheduling priority to %d. Consider " "giving picom the CAP_SYS_NICE capability or equivalent " @@ -2618,6 +2605,7 @@ void set_rr_scheduling(void) { priority); return; } + log_info("Set real-time scheduling priority to %d", priority); }