Merge branch 'stall.2023.01.09a' into HEAD
authorPaul E. McKenney <paulmck@kernel.org>
Fri, 3 Feb 2023 00:40:07 +0000 (16:40 -0800)
committerPaul E. McKenney <paulmck@kernel.org>
Fri, 3 Feb 2023 00:40:07 +0000 (16:40 -0800)
stall.2023.01.09a: RCU CPU stall-warning updates.

1  2 
Documentation/admin-guide/kernel-parameters.txt
kernel/rcu/rcu.h
kernel/rcu/tree.c
kernel/rcu/update.c

                        rcupdate.rcu_cpu_stall_timeout to be used (after
                        conversion from seconds to milliseconds).
  
+       rcupdate.rcu_cpu_stall_cputime= [KNL]
+                       Provide statistics on the cputime and count of
+                       interrupts and tasks during the sampling period. For
+                       multiple continuous RCU stalls, all sampling periods
+                       begin at half of the first RCU stall timeout.
 +      rcupdate.rcu_exp_stall_task_details= [KNL]
 +                      Print stack dumps of any tasks blocking the
 +                      current expedited RCU grace period during an
 +                      expedited RCU CPU stall warning.
 +
        rcupdate.rcu_expedited= [KNL]
                        Use expedited grace-period primitives, for
                        example, synchronize_rcu_expedited() instead
@@@ -224,7 -224,7 +224,8 @@@ extern int rcu_cpu_stall_ftrace_dump
  extern int rcu_cpu_stall_suppress;
  extern int rcu_cpu_stall_timeout;
  extern int rcu_exp_cpu_stall_timeout;
+ extern int rcu_cpu_stall_cputime;
 +extern bool rcu_exp_stall_task_details __read_mostly;
  int rcu_jiffies_till_stall_check(void);
  int rcu_exp_jiffies_till_stall_check(void);
  
Simple merge
@@@ -547,8 -508,8 +547,10 @@@ int rcu_cpu_stall_timeout __read_mostl
  module_param(rcu_cpu_stall_timeout, int, 0644);
  int rcu_exp_cpu_stall_timeout __read_mostly = CONFIG_RCU_EXP_CPU_STALL_TIMEOUT;
  module_param(rcu_exp_cpu_stall_timeout, int, 0644);
+ int rcu_cpu_stall_cputime __read_mostly = IS_ENABLED(CONFIG_RCU_CPU_STALL_CPUTIME);
+ module_param(rcu_cpu_stall_cputime, int, 0644);
 +bool rcu_exp_stall_task_details __read_mostly;
 +module_param(rcu_exp_stall_task_details, bool, 0644);
  #endif /* #ifdef CONFIG_RCU_STALL_COMMON */
  
  // Suppress boot-time RCU CPU stall warnings and rcutorture writer stall