|
@@ -254,7 +254,6 @@ struct rcu_data {
|
|
|
#endif /* #else #ifdef CONFIG_NO_HZ */
|
|
|
|
|
|
#define RCU_JIFFIES_TILL_FORCE_QS 3 /* for rsp->jiffies_force_qs */
|
|
|
-#ifdef CONFIG_RCU_CPU_STALL_DETECTOR
|
|
|
|
|
|
#ifdef CONFIG_PROVE_RCU
|
|
|
#define RCU_STALL_DELAY_DELTA (5 * HZ)
|
|
@@ -272,13 +271,6 @@ struct rcu_data {
|
|
|
/* scheduling clock irq */
|
|
|
/* before ratting on them. */
|
|
|
|
|
|
-#ifdef CONFIG_RCU_CPU_STALL_DETECTOR_RUNNABLE
|
|
|
-#define RCU_CPU_STALL_SUPPRESS_INIT 0
|
|
|
-#else
|
|
|
-#define RCU_CPU_STALL_SUPPRESS_INIT 1
|
|
|
-#endif
|
|
|
-
|
|
|
-#endif /* #ifdef CONFIG_RCU_CPU_STALL_DETECTOR */
|
|
|
|
|
|
/*
|
|
|
* RCU global state, including node hierarchy. This hierarchy is
|
|
@@ -325,12 +317,10 @@ struct rcu_state {
|
|
|
/* due to lock unavailable. */
|
|
|
unsigned long n_force_qs_ngp; /* Number of calls leaving */
|
|
|
/* due to no GP active. */
|
|
|
-#ifdef CONFIG_RCU_CPU_STALL_DETECTOR
|
|
|
unsigned long gp_start; /* Time at which GP started, */
|
|
|
/* but in jiffies. */
|
|
|
unsigned long jiffies_stall; /* Time at which to check */
|
|
|
/* for CPU stalls. */
|
|
|
-#endif /* #ifdef CONFIG_RCU_CPU_STALL_DETECTOR */
|
|
|
char *name; /* Name of structure. */
|
|
|
};
|
|
|
|
|
@@ -366,11 +356,9 @@ static int rcu_preempted_readers(struct rcu_node *rnp);
|
|
|
static void rcu_report_unblock_qs_rnp(struct rcu_node *rnp,
|
|
|
unsigned long flags);
|
|
|
#endif /* #ifdef CONFIG_HOTPLUG_CPU */
|
|
|
-#ifdef CONFIG_RCU_CPU_STALL_DETECTOR
|
|
|
static void rcu_print_detail_task_stall(struct rcu_state *rsp);
|
|
|
static void rcu_print_task_stall(struct rcu_node *rnp);
|
|
|
static void rcu_preempt_stall_reset(void);
|
|
|
-#endif /* #ifdef CONFIG_RCU_CPU_STALL_DETECTOR */
|
|
|
static void rcu_preempt_check_blocked_tasks(struct rcu_node *rnp);
|
|
|
#ifdef CONFIG_HOTPLUG_CPU
|
|
|
static int rcu_preempt_offline_tasks(struct rcu_state *rsp,
|