From 59a57722aee0273079177e604a74f9a05f22f58a Mon Sep 17 00:00:00 2001 From: Flavio Ceolin Date: Tue, 20 Jan 2026 09:21:02 -0800 Subject: [PATCH] pm: Fix wrong type promotion In pm_system_suspend there is a possible invalid type promotion in sys_clock_set_timeout(MAX(0, ticks - exit_latency_ticks), true); ticks is int32_t and exit_latency_ticks is uint32_t consequently ticks is promoted to uint32_t resulting in a possible underflow and setting a wrong value in sys_clock_set_timeout(). Fixes #100005 Coverity CID: 535628 Signed-off-by: Flavio Ceolin --- subsys/pm/pm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/subsys/pm/pm.c b/subsys/pm/pm.c index 062c7bd623a..13ed1ee7f0e 100644 --- a/subsys/pm/pm.c +++ b/subsys/pm/pm.c @@ -214,7 +214,7 @@ bool pm_system_suspend(int32_t kernel_ticks) * is not passed as the next timeout. * */ - sys_clock_set_timeout(MAX(0, ticks - exit_latency_ticks), true); + sys_clock_set_timeout(MAX(0, (int64_t)ticks - (int64_t)exit_latency_ticks), true); } /*