On Sat, Sep 13, 2014 at 08:20:05AM +0800, Fengguang Wu wrote: > On Fri, Sep 12, 2014 at 12:26:59PM -0700, Paul E. McKenney wrote: > > On Fri, Sep 12, 2014 at 02:19:57PM -0500, Christoph Lameter wrote: > > > On Fri, 12 Sep 2014, Paul E. McKenney wrote: > > > > > > > So, I am not seeing this failure in my testing, but my best guess is > > > > that the problem is due to the fact that force_quiescent_state() is > > > > sometimes invoked with preemption enabled, which breaks > > > > __this_cpu_read() > > > > though perhaps with very low probability. The common-case call (from > > > > __call_rcu_core()) -does- have preemption disabled, in fact, it has > > > > interrupts disabled. > > > > > > How could __this_cpu_read() break in a way that would make a difference to > > > the code? There was no disabling/enabling of preemption before the patch > > > and there is nothing like that after the patch. If there was a race then > > > it still exists. The modification certainly cannot create a race. > > > > Excellent question. Yet Fengguang's tests show breakage. > > > > Fengguang, any possibility of a false positive here? > > Yes, it is possible. I find the first bad commit and its parent > commit's kernels are built in 2 different machines which might > cause subtle changes. I'll redo the bisect.
Thank you, Fengguang, and please let me know how it goes! 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/