Message ID | 20190623151313.970-2-tranmanphong@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | cleanup cppcheck signed shifting errors | expand |
On Sun, Jun 23, 2019 at 10:12:59PM +0700, Phong Tran wrote: > fix "Shifting signed 32-bit value by 31 bits is undefined behaviour > errors" > > [arch/arm/kernel/perf_event_v7.c:1080]: (error) Shifting signed 32-bit > value by 31 bits is undefined behaviour > [arch/arm/kernel/perf_event_v7.c:1436]: (error) Shifting signed 32-bit > value by 31 bits is undefined behaviour > [arch/arm/kernel/perf_event_v7.c:1783]: (error) Shifting signed 32-bit > value by 31 bits is undefined behaviour I don't think that is true; the kernel uses -fno-strict-overflow (which implies -fwrapv) and that takes away all the signed UB.
diff --git a/arch/arm/kernel/perf_event_v7.c b/arch/arm/kernel/perf_event_v7.c index a4fb0f8b8f84..83dc472a39b2 100644 --- a/arch/arm/kernel/perf_event_v7.c +++ b/arch/arm/kernel/perf_event_v7.c @@ -697,9 +697,9 @@ static struct attribute_group armv7_pmuv2_events_attr_group = { /* * Event filters for PMUv2 */ -#define ARMV7_EXCLUDE_PL1 (1 << 31) -#define ARMV7_EXCLUDE_USER (1 << 30) -#define ARMV7_INCLUDE_HYP (1 << 27) +#define ARMV7_EXCLUDE_PL1 (1U << 31) +#define ARMV7_EXCLUDE_USER (1U << 30) +#define ARMV7_INCLUDE_HYP (1U << 27) /* * Secure debug enable reg
fix "Shifting signed 32-bit value by 31 bits is undefined behaviour errors" [arch/arm/kernel/perf_event_v7.c:1080]: (error) Shifting signed 32-bit value by 31 bits is undefined behaviour [arch/arm/kernel/perf_event_v7.c:1436]: (error) Shifting signed 32-bit value by 31 bits is undefined behaviour [arch/arm/kernel/perf_event_v7.c:1783]: (error) Shifting signed 32-bit value by 31 bits is undefined behaviour Signed-off-by: Phong Tran <tranmanphong@gmail.com> --- arch/arm/kernel/perf_event_v7.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)