[PATCH tip/core/rcu 23/88] srcu: Make Classic and Tree SRCU announce themselves at bootup

From: Paul E. McKenney
Date: Thu May 25 2017 - 18:16:37 EST


Currently, the only way to tell whether a given kernel is running
Classic, Tiny, or Tree SRCU is to look at the .config file, which
can easily be lost or associated with the wrong kernel. This commit
therefore has Classic and Tree SRCU identify themselves at boot time.

Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
---
kernel/rcu/srcu.c | 7 +++++++
kernel/rcu/srcutree.c | 7 +++++++
2 files changed, 14 insertions(+)

diff --git a/kernel/rcu/srcu.c b/kernel/rcu/srcu.c
index 584d8a983883..c0a482d7da08 100644
--- a/kernel/rcu/srcu.c
+++ b/kernel/rcu/srcu.c
@@ -660,3 +660,10 @@ void process_srcu(struct work_struct *work)
srcu_reschedule(sp);
}
EXPORT_SYMBOL_GPL(process_srcu);
+
+static int __init srcu_bootup_announce(void)
+{
+ pr_info("Classic SRCU implementation.\n");
+ return 0;
+}
+early_initcall(srcu_bootup_announce);
diff --git a/kernel/rcu/srcutree.c b/kernel/rcu/srcutree.c
index 828ee8ef005e..725e5a90f631 100644
--- a/kernel/rcu/srcutree.c
+++ b/kernel/rcu/srcutree.c
@@ -1168,3 +1168,10 @@ void srcutorture_get_gp_data(enum rcutorture_type test_type,
*gpnum = rcu_seq_ctr(sp->srcu_gp_seq_needed);
}
EXPORT_SYMBOL_GPL(srcutorture_get_gp_data);
+
+static int __init srcu_bootup_announce(void)
+{
+ pr_info("Hierarchical SRCU implementation.\n");
+ return 0;
+}
+early_initcall(srcu_bootup_announce);
--
2.5.2