aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatias Elo <matias.elo@nokia.com>2023-04-05 13:38:43 +0300
committerMatias Elo <matias.elo@nokia.com>2023-04-05 15:54:18 +0300
commit9b74155f11020e75c25c2b0ffc094f36d0124cce (patch)
treea14762d11ddefa8bcc8e4a5e4656823ae7aafcbf
parent58199ecff33175f95ab32e77851d11320ac7e84a (diff)
linux-gen: sched: fix potential integer overflows
Fix potential integer overflows reported by Coverity. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
-rw-r--r--platform/linux-generic/odp_schedule_basic.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/platform/linux-generic/odp_schedule_basic.c b/platform/linux-generic/odp_schedule_basic.c
index 7eec1f457..d289f1e21 100644
--- a/platform/linux-generic/odp_schedule_basic.c
+++ b/platform/linux-generic/odp_schedule_basic.c
@@ -331,7 +331,7 @@ static void prio_grp_mask_init(void)
static inline void prio_grp_mask_set(int prio, int grp)
{
- uint64_t grp_mask = 0x1u << grp;
+ uint64_t grp_mask = (uint64_t)1 << grp;
uint64_t mask = odp_atomic_load_u64(&sched->prio_grp_mask[prio]);
odp_atomic_store_u64(&sched->prio_grp_mask[prio], mask | grp_mask);
@@ -341,7 +341,7 @@ static inline void prio_grp_mask_set(int prio, int grp)
static inline void prio_grp_mask_clear(int prio, int grp)
{
- uint64_t grp_mask = 0x1u << grp;
+ uint64_t grp_mask = (uint64_t)1 << grp;
uint64_t mask = odp_atomic_load_u64(&sched->prio_grp_mask[prio]);
sched->prio_grp_count[prio][grp]--;
@@ -753,7 +753,7 @@ static inline int grp_update_tbl(void)
if (odp_thrmask_isset(&sched->sched_grp[i].mask, thr)) {
sched_local.grp[num] = i;
num++;
- mask |= 0x1u << i;
+ mask |= (uint64_t)1 << i;
}
}