[LTP] [PATCH] open_posix_testsuite/sched_yield: Fix sched_setscheduler() check

yang.zhang gaoshanliukou@163.com
Mon Sep 28 10:36:03 CEST 2026


From: "yang.zhang" <zhangyang01@kylinos.cn>

POSIX specifies that sched_setscheduler() returns the former scheduling
policy on success and -1 on failure.  Treating every nonzero return value
as an error incorrectly rejects valid previous policies.

Check explicitly for -1.

Signed-off-by: yang.zhang <zhangyang01@kylinos.cn>
---
 .../conformance/interfaces/sched_yield/1-1.c                    | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/testcases/open_posix_testsuite/conformance/interfaces/sched_yield/1-1.c b/testcases/open_posix_testsuite/conformance/interfaces/sched_yield/1-1.c
index 922b1aa1f..9c5189af9 100644
--- a/testcases/open_posix_testsuite/conformance/interfaces/sched_yield/1-1.c
+++ b/testcases/open_posix_testsuite/conformance/interfaces/sched_yield/1-1.c
@@ -82,7 +82,7 @@ int test_main(int argc PTS_ATTRIBUTE_UNUSED, char **argv PTS_ATTRIBUTE_UNUSED)
 	/* get in FIFO */
 	sp.sched_priority = sched_get_priority_min(SCHED_FIFO);
 	rc = sched_setscheduler(getpid(), SCHED_FIFO, &sp);
-	if (rc) {
+	if (rc == -1) {
 		ERR_LOG("sched_setscheduler", rc);
 		return status;
 	}
-- 
2.34.1



More information about the ltp mailing list