cpu.2014.11.03a: Changes for per-CPU variables.
doc.2014.11.13a: Documentation updates.
fixes.2014.11.13a: Miscellaneous fixes.
signal.2014.10.29a: Signal changes.
rt.2014.10.29a: Real-time changes.
torture.2014.11.03a: torture-test changes.
struct rcu_node *rnp,
struct rcu_data *rdp);
#endif /* #ifdef CONFIG_HOTPLUG_CPU */
- ----static void rcu_preempt_check_callbacks(int cpu);
+ ++++static void rcu_preempt_check_callbacks(void);
void call_rcu(struct rcu_head *head, void (*func)(struct rcu_head *rcu));
----- #if defined(CONFIG_HOTPLUG_CPU) || defined(CONFIG_TREE_PREEMPT_RCU)
+++++ #if defined(CONFIG_HOTPLUG_CPU) || defined(CONFIG_PREEMPT_RCU)
static void rcu_report_exp_rnp(struct rcu_state *rsp, struct rcu_node *rnp,
bool wake);
----- #endif /* #if defined(CONFIG_HOTPLUG_CPU) || defined(CONFIG_TREE_PREEMPT_RCU) */
+++++ #endif /* #if defined(CONFIG_HOTPLUG_CPU) || defined(CONFIG_PREEMPT_RCU) */
static void __init __rcu_init_preempt(void);
static void rcu_initiate_boost(struct rcu_node *rnp, unsigned long flags);
static void rcu_preempt_boost_start_gp(struct rcu_node *rnp);
RCU grace period persists, additional CPU stall warnings are
printed at more widely spaced intervals.
--- --config RCU_CPU_STALL_VERBOSE
--- -- bool "Print additional per-task information for RCU_CPU_STALL_DETECTOR"
--- -- depends on TREE_PREEMPT_RCU
--- -- default y
--- -- help
--- -- This option causes RCU to printk detailed per-task information
--- -- for any tasks that are stalling the current RCU grace period.
--- --
--- -- Say N if you are unsure.
--- --
--- -- Say Y if you want to enable such checks.
--- --
config RCU_CPU_STALL_INFO
bool "Print additional diagnostics on RCU CPU stall"
----- depends on (TREE_RCU || TREE_PREEMPT_RCU) && DEBUG_KERNEL
+++++ depends on (TREE_RCU || PREEMPT_RCU) && DEBUG_KERNEL
default n
help
For each stalled CPU that is aware of the current RCU grace
CONFIG_RCU_NOCB_CPU=n
CONFIG_DEBUG_LOCK_ALLOC=n
CONFIG_RCU_CPU_STALL_INFO=n
--- --CONFIG_RCU_CPU_STALL_VERBOSE=n
CONFIG_RCU_BOOST=y
----- CONFIG_RCU_BOOST_PRIO=2
+++++ CONFIG_RCU_KTHREAD_PRIO=2
CONFIG_DEBUG_OBJECTS_RCU_HEAD=n
CONFIG_RCU_NOCB_CPU=y
CONFIG_RCU_NOCB_CPU_ALL=y
CONFIG_DEBUG_LOCK_ALLOC=n
+++++CONFIG_PROVE_LOCKING=y
+++++CONFIG_PROVE_RCU=y
CONFIG_RCU_CPU_STALL_INFO=n
--- --CONFIG_RCU_CPU_STALL_VERBOSE=n
CONFIG_RCU_BOOST=n
CONFIG_DEBUG_OBJECTS_RCU_HEAD=n
CONFIG_PREEMPT -- Do half. (First three and #8.)
CONFIG_PROVE_LOCKING -- Do all but two, covering CONFIG_PROVE_RCU and not.
CONFIG_PROVE_RCU -- Do all but one under CONFIG_PROVE_LOCKING.
----- CONFIG_RCU_BOOST -- one of TREE_PREEMPT_RCU.
----- CONFIG_RCU_BOOST_PRIO -- set to 2 for _BOOST testing.
--- - CONFIG_RCU_CPU_STALL_INFO -- do one with and without _VERBOSE.
--- - CONFIG_RCU_CPU_STALL_VERBOSE -- do one with and without _INFO.
+++++ CONFIG_RCU_BOOST -- one of PREEMPT_RCU.
+++++ CONFIG_RCU_KTHREAD_PRIO -- set to 2 for _BOOST testing.
+++ + CONFIG_RCU_CPU_STALL_INFO -- Do one.
-CONFIG_RCU_CPU_STALL_VERBOSE -- do one with and without _INFO.
CONFIG_RCU_FANOUT -- Cover hierarchy as currently, but overlap with others.
CONFIG_RCU_FANOUT_EXACT -- Do one.
CONFIG_RCU_FANOUT_LEAF -- Do one non-default.