Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1546890 > unrolled thread

[PATCH] rcu: Enable RCU tracepoints by default to aid in debugging

Started byMatt Fleming <matt@codeblueprint.co.uk>
First post2016-12-23 16:20 +0100
Last post2016-12-23 18:20 +0100
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] rcu: Enable RCU tracepoints by default to aid in debugging Matt Fleming <matt@codeblueprint.co.uk> - 2016-12-23 16:20 +0100
    Re: [PATCH] rcu: Enable RCU tracepoints by default to aid in  debugging "Paul E. McKenney" <paulmck@linux.vnet.ibm.com> - 2016-12-23 18:20 +0100

#1546890 — [PATCH] rcu: Enable RCU tracepoints by default to aid in debugging

FromMatt Fleming <matt@codeblueprint.co.uk>
Date2016-12-23 16:20 +0100
Subject[PATCH] rcu: Enable RCU tracepoints by default to aid in debugging
Message-ID<sRzNw-6F-11@gated-at.bofh.it>
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>
---
 lib/Kconfig.debug | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index a6c8db1d62f6..7fe1ff001792 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -1431,6 +1431,7 @@ config RCU_CPU_STALL_TIMEOUT
 config RCU_TRACE
 	bool "Enable tracing for RCU"
 	depends on DEBUG_KERNEL
+	default y if TREE_RCU
 	select TRACE_CLOCK
 	help
 	  This option provides tracing in RCU which presents stats
-- 
2.10.0

[toc] | [next] | [standalone]


#1546926 — Re: [PATCH] rcu: Enable RCU tracepoints by default to aid in debugging

From"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
Date2016-12-23 18:20 +0100
SubjectRe: [PATCH] rcu: Enable RCU tracepoints by default to aid in debugging
Message-ID<sRBFD-1lR-13@gated-at.bofh.it>
In reply to#1546890
On Fri, Dec 23, 2016 at 03:17:53PM +0000, Matt Fleming wrote:
> 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>

Queued for testing and review, thank you!

							Thanx, Paul

> ---
>  lib/Kconfig.debug | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index a6c8db1d62f6..7fe1ff001792 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -1431,6 +1431,7 @@ config RCU_CPU_STALL_TIMEOUT
>  config RCU_TRACE
>  	bool "Enable tracing for RCU"
>  	depends on DEBUG_KERNEL
> +	default y if TREE_RCU
>  	select TRACE_CLOCK
>  	help
>  	  This option provides tracing in RCU which presents stats
> -- 
> 2.10.0
> 

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web