Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753047AbYHHRtf (ORCPT ); Fri, 8 Aug 2008 13:49:35 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1757183AbYHHRtX (ORCPT ); Fri, 8 Aug 2008 13:49:23 -0400 Received: from smtp1.linux-foundation.org ([140.211.169.13]:54213 "EHLO smtp1.linux-foundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754328AbYHHRtW (ORCPT ); Fri, 8 Aug 2008 13:49:22 -0400 Date: Fri, 8 Aug 2008 10:48:41 -0700 (PDT) From: Linus Torvalds To: Peter Zijlstra cc: Andrew Morton , mingo@elte.hu, tglx@linutronix.de, marcin.slusarz@gmail.com, linux-kernel@vger.kernel.org, David Miller , Steven Rostedt , Paul E McKenney Subject: Re: [PATCH 0/2] printk vs rq->lock and xtime lock In-Reply-To: <1218217257.29098.2.camel@lappy.programming.kicks-ass.net> Message-ID: References: <20080324122424.671168000@chello.nl> <1206382547.6437.131.camel@lappy> <20080324115738.85c72bb5.akpm@linux-foundation.org> <1218202249.8625.106.camel@twins> <1218215454.8625.133.camel@twins> <1218217257.29098.2.camel@lappy.programming.kicks-ass.net> User-Agent: Alpine 1.10 (LFD 962 2008-03-14) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1068 Lines: 35 On Fri, 8 Aug 2008, Peter Zijlstra wrote: > + > + local_irq_save(flags); > + kws = &__get_cpu_var(kws); > + if (!kws->pending) { > + call_rcu(&kws->head, __wake_up_klogd); > + kws->pending = 1; In case we have a recursive oops in the RCU paths, I'd think we'd be *much* better off with if (!kws->pending) { kws->pending = 1; call_rcu(&kws->head, __wake_up_klogd); } in order to not re-enter the RCU paths again and causing endless oopses along with list corruption. Hmm? Oh, and I don't see the point of the irqsave/restore in __wake_up_klogd(). Or the BUG_ON(), for that matter (even if it ever were to trigger, we'd be better off _not_ triggering it - I agree with it in a "verifying the new implementation works at all" sense, but not in a "this is actually for merging" kind of patch). Linus -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/