mbox series

[0/2] softirq: redefine the type of kernel_stat.softirqs[] as unsigned long

Message ID 20230724132224.916-1-thunder.leizhen@huaweicloud.com (mailing list archive)
Headers show
Series softirq: redefine the type of kernel_stat.softirqs[] as unsigned long | expand

Message

Leizhen (ThunderTown) July 24, 2023, 1:22 p.m. UTC
From: Zhen Lei <thunder.leizhen@huawei.com>

The type of member softirqs in structure kernel_stat is unsigned int, its
accumulated value can easily overflow. Changing to unsigned long can safely 
solve the problem on 64-bit processors.

 struct kernel_stat {
 	unsigned long irqs_sum;
-	unsigned int softirqs[NR_SOFTIRQS];
+	unsigned long softirqs[NR_SOFTIRQS];


Zhen Lei (2):
  softirq: fix integer overflow in function show_stat()
  softirq: redefine the type of kernel_stat.softirqs[] as unsigned long

 fs/proc/softirqs.c          | 2 +-
 fs/proc/stat.c              | 4 ++--
 include/linux/kernel_stat.h | 8 ++++----
 kernel/rcu/tree.h           | 2 +-
 kernel/rcu/tree_stall.h     | 6 +++---
 5 files changed, 11 insertions(+), 11 deletions(-)