From 963ba980477cfe542215cfb40cf977dc49d7f891 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Wed, 28 Jan 2026 11:01:55 -0600 Subject: [PATCH] cpukit/.../scheduler*: Address -Wsign-compare warnings This warning occurs when comparing a signed variable to an unsigned one. This is frequently an int or ssize_t variable compared to a uint32_t or size_t. Sometimes the size_t is from a sizeof() use. This addresses sign comparison warnings primarily in the CBS. --- cpukit/rtems/src/schedulermapfromposix.c | 2 +- cpukit/score/src/schedulercbsattachthread.c | 2 +- cpukit/score/src/schedulercbscreateserver.c | 4 ++-- cpukit/score/src/schedulercbsgetexecutiontime.c | 2 +- cpukit/score/src/schedulercbssetparameters.c | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/cpukit/rtems/src/schedulermapfromposix.c b/cpukit/rtems/src/schedulermapfromposix.c index 7d3161658b..0552b1d456 100644 --- a/cpukit/rtems/src/schedulermapfromposix.c +++ b/cpukit/rtems/src/schedulermapfromposix.c @@ -62,7 +62,7 @@ rtems_status_code rtems_scheduler_map_priority_from_posix( return RTEMS_INVALID_PRIORITY; } - if ( posix_priority >= scheduler->maximum_priority ) { + if ( (uint32_t) posix_priority >= scheduler->maximum_priority ) { return RTEMS_INVALID_PRIORITY; } diff --git a/cpukit/score/src/schedulercbsattachthread.c b/cpukit/score/src/schedulercbsattachthread.c index 79037a9b67..4e4c66785a 100644 --- a/cpukit/score/src/schedulercbsattachthread.c +++ b/cpukit/score/src/schedulercbsattachthread.c @@ -62,7 +62,7 @@ int _Scheduler_CBS_Attach_thread ( return SCHEDULER_CBS_ERROR_NOSERVER; } - if ( server->task_id != -1 ) { + if ( server->task_id != (rtems_id)-1 ) { return SCHEDULER_CBS_ERROR_FULL; } diff --git a/cpukit/score/src/schedulercbscreateserver.c b/cpukit/score/src/schedulercbscreateserver.c index 5a1a93dc24..2052984264 100644 --- a/cpukit/score/src/schedulercbscreateserver.c +++ b/cpukit/score/src/schedulercbscreateserver.c @@ -53,8 +53,8 @@ int _Scheduler_CBS_Create_server ( if ( params->budget <= 0 || params->deadline <= 0 || - params->budget >= SCHEDULER_EDF_PRIO_MSB || - params->deadline >= SCHEDULER_EDF_PRIO_MSB ) + params->budget >= (time_t)SCHEDULER_EDF_PRIO_MSB || + params->deadline >= (time_t)SCHEDULER_EDF_PRIO_MSB ) return SCHEDULER_CBS_ERROR_INVALID_PARAMETER; for ( i = 0; i<_Scheduler_CBS_Maximum_servers; i++ ) { diff --git a/cpukit/score/src/schedulercbsgetexecutiontime.c b/cpukit/score/src/schedulercbsgetexecutiontime.c index 825c18efe3..829cb77e0f 100644 --- a/cpukit/score/src/schedulercbsgetexecutiontime.c +++ b/cpukit/score/src/schedulercbsgetexecutiontime.c @@ -64,7 +64,7 @@ int _Scheduler_CBS_Get_execution_time ( return SCHEDULER_CBS_ERROR_NOSERVER; } - if ( server->task_id == -1 ) { + if ( server->task_id == (rtems_id)-1 ) { *exec_time = 0; return SCHEDULER_CBS_OK; } diff --git a/cpukit/score/src/schedulercbssetparameters.c b/cpukit/score/src/schedulercbssetparameters.c index 718cee3626..627f97c70b 100644 --- a/cpukit/score/src/schedulercbssetparameters.c +++ b/cpukit/score/src/schedulercbssetparameters.c @@ -52,8 +52,8 @@ int _Scheduler_CBS_Set_parameters ( if ( params->budget <= 0 || params->deadline <= 0 || - params->budget >= SCHEDULER_EDF_PRIO_MSB || - params->deadline >= SCHEDULER_EDF_PRIO_MSB ) + params->budget >= (time_t)SCHEDULER_EDF_PRIO_MSB || + params->deadline >= (time_t)SCHEDULER_EDF_PRIO_MSB ) return SCHEDULER_CBS_ERROR_INVALID_PARAMETER; if ( !_Scheduler_CBS_Server_list[server_id].initialized )