From 5bca761148bc85d0958ab9ce11c81b0da698e4fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Wed, 12 Jun 2024 10:58:25 +0200 Subject: [PATCH] kms: Don't use kernel thread when headless We're not doing anything significant in the KMS thread anyway, so don't make it a kernel thread, and don't ask to be real time scheduled (which we wouldn't be anyway, but for clarity). Part-of: --- src/backends/native/meta-kms.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/backends/native/meta-kms.c b/src/backends/native/meta-kms.c index 795008b21..d41fcefb5 100644 --- a/src/backends/native/meta-kms.c +++ b/src/backends/native/meta-kms.c @@ -370,6 +370,7 @@ meta_kms_new (MetaBackend *backend, MetaKms *kms; const char *thread_type_string; MetaThreadType thread_type = META_THREAD_TYPE_KERNEL; + gboolean wants_realtime_scheduling; thread_type_string = g_getenv ("MUTTER_DEBUG_KMS_THREAD_TYPE"); if (thread_type_string) @@ -382,12 +383,16 @@ meta_kms_new (MetaBackend *backend, g_assert_not_reached (); } + wants_realtime_scheduling = !(flags & META_KMS_FLAG_NO_MODE_SETTING); + if (flags & META_KMS_FLAG_NO_MODE_SETTING) + thread_type = META_THREAD_TYPE_USER; + kms = g_initable_new (META_TYPE_KMS, NULL, error, "backend", backend, "name", "KMS thread", "thread-type", thread_type, - "wants-realtime", TRUE, + "wants-realtime", wants_realtime_scheduling, NULL); kms->flags = flags;