40 lines
1.4 KiB
Diff
40 lines
1.4 KiB
Diff
From d2bf87608a1c3f2d62ceb9300a74e9006394c678 Mon Sep 17 00:00:00 2001
|
|
From: herengui <herengui@kylinsec.com.cn>
|
|
Date: Wed, 31 May 2023 15:01:33 +0800
|
|
Subject: [PATCH] alsactl: fix error handling for sched_setscheduler() call
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=utf-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
As man page says: "If successful, the sched_setparam() function shall return zero."
|
|
|
|
Without update I got this output in the syslog (journalctl):
|
|
abr 16 09:25:30 mypc alsactl[1652]: alsactl 1.2.2 daemon started
|
|
abr 16 09:25:30 mypc alsactl[1652]: /usr/bin/alsactl: do_nice:165sched_setparam failed: No such file or directory
|
|
|
|
If sched_setscheduler() returns 0, so it means that the call was successful.
|
|
|
|
Signed-off-by: Oscar Megía <megia.oscar@gmail.com>
|
|
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
|
|
|
|
---
|
|
alsactl/alsactl.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/alsactl/alsactl.c b/alsactl/alsactl.c
|
|
index dfb1db7..60d3945 100644
|
|
--- a/alsactl/alsactl.c
|
|
+++ b/alsactl/alsactl.c
|
|
@@ -161,7 +161,7 @@ static void do_nice(int use_nice, int sched_idle)
|
|
if (sched_idle) {
|
|
if (sched_getparam(0, &sched_param) >= 0) {
|
|
sched_param.sched_priority = 0;
|
|
- if (!sched_setscheduler(0, SCHED_IDLE, &sched_param))
|
|
+ if (sched_setscheduler(0, SCHED_IDLE, &sched_param) < 0)
|
|
error("sched_setparam failed: %s", strerror(errno));
|
|
} else {
|
|
error("sched_getparam failed: %s", strerror(errno));
|
|
--
|
|
2.40.1
|
|
|