diff options
| author | Yongliang Gao <[email protected]> | 2025-02-16 08:41:09 +0000 |
|---|---|---|
| committer | Joel Fernandes <[email protected]> | 2025-05-16 13:00:54 +0000 |
| commit | da6b85598af30e9fec34d82882d7e1e39f3da769 (patch) | |
| tree | dacf754c703cc4a498d97e44d2b18b362ec1aa20 /rust/helpers/xarray.c | |
| parent | rcu: Remove swake_up_one_online() bandaid (diff) | |
| download | kernel-da6b85598af30e9fec34d82882d7e1e39f3da769.tar.gz kernel-da6b85598af30e9fec34d82882d7e1e39f3da769.zip | |
rcu/cpu_stall_cputime: fix the hardirq count for x86 architecture
When counting the number of hardirqs in the x86 architecture,
it is essential to add arch_irq_stat_cpu to ensure accuracy.
For example, a CPU loop within the rcu_read_lock function.
Before:
[ 70.910184] rcu: INFO: rcu_preempt self-detected stall on CPU
[ 70.910436] rcu: 3-....: (4999 ticks this GP) idle=***
[ 70.910711] rcu: hardirqs softirqs csw/system
[ 70.910870] rcu: number: 0 657 0
[ 70.911024] rcu: cputime: 0 0 2498 ==> 2498(ms)
[ 70.911278] rcu: (t=5001 jiffies g=3677 q=29 ncpus=8)
After:
[ 68.046132] rcu: INFO: rcu_preempt self-detected stall on CPU
[ 68.046354] rcu: 2-....: (4999 ticks this GP) idle=***
[ 68.046628] rcu: hardirqs softirqs csw/system
[ 68.046793] rcu: number: 2498 663 0
[ 68.046951] rcu: cputime: 0 0 2496 ==> 2496(ms)
[ 68.047244] rcu: (t=5000 jiffies g=3825 q=4 ncpus=8)
Fixes: be42f00b73a0 ("rcu: Add RCU stall diagnosis information")
Reported-by: kernel test robot <[email protected]>
Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
Signed-off-by: Yongliang Gao <[email protected]>
Reviewed-by: Neeraj Upadhyay <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Boqun Feng <[email protected]>
Signed-off-by: Joel Fernandes <[email protected]>
Diffstat (limited to 'rust/helpers/xarray.c')
0 files changed, 0 insertions, 0 deletions
