From 5c153537f5b4eafe887de95658c1a8defc77c115 Mon Sep 17 00:00:00 2001 From: Aaron Lindsay OS Date: Fri, 22 Feb 2019 18:32:00 -0500 Subject: [PATCH] target/arm: Stop unintentional sign extension in pmu_init This was introduced by commit bf8d09694ccc07487cd73d7562081fdaec3370c8 target/arm: Don't clear supported PMU events when initializing PMCEID1 and identified by Coverity (CID 1398645). Backports commit 67da43d668320e1bcb0a0195aaf2de4ff2a001a0 from qemu --- qemu/target/arm/helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qemu/target/arm/helper.c b/qemu/target/arm/helper.c index 1030dad1..e1d4cdca 100644 --- a/qemu/target/arm/helper.c +++ b/qemu/target/arm/helper.c @@ -980,7 +980,7 @@ void pmu_init(ARMCPU *cpu) if (cnt->supported(&cpu->env)) { cpu->env.supported_event_map[cnt->number] = i; - uint64_t event_mask = 1 << (cnt->number & 0x1f); + uint64_t event_mask = 1ULL << (cnt->number & 0x1f); if (cnt->number & 0x20) { cpu->pmceid1 |= event_mask; } else {