From: Rémi Bernon rbernon@codeweavers.com
--- server/thread.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/server/thread.c b/server/thread.c index 649d5e8c328..87ce7b7fa5d 100644 --- a/server/thread.c +++ b/server/thread.c @@ -230,7 +230,13 @@ void init_threading(void) #ifdef __linux__ #ifdef RLIMIT_NICE struct rlimit rlimit; - if (!getrlimit( RLIMIT_NICE, &rlimit )) +#endif +#ifdef HAVE_SETPRIORITY + if (setpriority( PRIO_PROCESS, getpid(), -20 ) == 0) nice_limit = -19; + setpriority( PRIO_PROCESS, getpid(), 0 ); +#endif +#ifdef RLIMIT_NICE + if (!nice_limit && !getrlimit( RLIMIT_NICE, &rlimit )) { rlimit.rlim_cur = rlimit.rlim_max; setrlimit( RLIMIT_NICE, &rlimit );