On Mon, Jan 07, 2013 at 07:58:10AM -0800, Josh Triplett wrote: > On Sat, Jan 05, 2013 at 09:50:59AM -0800, Paul E. McKenney wrote: > > rcu: Provide RCU CPU stall warnings for tiny RCU > > > > Tiny RCU has historically omitted RCU CPU stall warnings in order to > > reduce memory requirements, however, lack of these warnings caused Thomas > > Gleixner some debugging pain recently. Therefore, this commit adds RCU > > CPU stall warnings to tiny RCU if RCU_TRACE=y. This keeps the memory > > footprint small, while still enabling CPU stall warnings in kernels > > built to enable them. > > > > This is still a bit on the high-risk side, so running this will likely > > be a debugging exercise. > > > > Reported-by: Thomas Gleixner <t...@linutronix.de> > > Signed-off-by: Paul E. McKenney <paul.mcken...@linaro.org> > > Signed-off-by: Paul E. McKenney <paul...@linux.vnet.ibm.com> > > Did you generate this patch with something other than git? The > formatting seems a bit off: it doesn't have a diffstat or the usual > "---" line between the commit message and the patch.
Indeed I did -- couldn't see the point of sending a 0/1 and 1/1 series of patches. ;-) > This patch seems reasonable to me, but the repeated use of #if > defined(CONFIG_SMP) || defined(CONFIG_RCU_TRACE) seems somewhat > annoying, and fragile if you ever decide to change the conditions. How > about defining an appropriate symbol in Kconfig for stall warnings, and > using that? But I only just removed the config option for SMP RCU stall warnings. ;-) But I must agree that "defined(CONFIG_SMP) || defined(CONFIG_RCU_TRACE)" is a bit obscure. The rationale is that RCU stall warnings are unconditionally enabled in SMP kernels, but don't want to be in TINY_RCU kernels due to size constraints. I therefore put it under CONFIG_RCU_TRACE, which also contains other TINY_RCU debugging-style options. Would adding a comment to this effect help? Thanx, Paul -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/