rcu: Enable RCU tracepoints by default to aid in debugging
authorMatt Fleming <matt@codeblueprint.co.uk>
Fri, 23 Dec 2016 15:17:53 +0000 (15:17 +0000)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Mon, 23 Jan 2017 19:37:13 +0000 (11:37 -0800)
commit961518259b3ba79a3cfc634794dc12ea9565dac4
treece1608e8528dc2e6830d460b797fa5703ac0c04c
parentfdbb9b315ce40922f3a8d2b8352776d7bc963d84
rcu: Enable RCU tracepoints by default to aid in debugging

While debugging a performance issue I needed to understand why
RCU sofitrqs were firing so frequently.

Unfortunately, the RCU callback tracepoints are hidden behind
CONFIG_RCU_TRACE which defaults to off in the upstream kernel and is
likely to also be disabled in enterprise distribution configs.

Enable it by default for CONFIG_TREE_RCU. However, we must keep it
disabled for tiny RCU, because it would otherwise pull in a large
amount of code that would make tiny RCU less than tiny.

I ran some file system metadata intensive workloads (git checkout,
FS-Mark) on a variety of machines with this patch and saw no
detectable change in performance.

Cc: Mel Gorman <mgorman@techsingularity.net>
Signed-off-by: Matt Fleming <matt@codeblueprint.co.uk>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
lib/Kconfig.debug