Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759223AbZA2RvD (ORCPT ); Thu, 29 Jan 2009 12:51:03 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1759190AbZA2RuV (ORCPT ); Thu, 29 Jan 2009 12:50:21 -0500 Received: from hrndva-omtalb.mail.rr.com ([71.74.56.123]:44748 "EHLO hrndva-omtalb.mail.rr.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759366AbZA2RuT (ORCPT ); Thu, 29 Jan 2009 12:50:19 -0500 Date: Thu, 29 Jan 2009 12:50:18 -0500 (EST) From: Steven Rostedt X-X-Sender: rostedt@gandalf.stny.rr.com To: Linus Torvalds cc: Peter Zijlstra , Andrew Morton , LKML , Rusty Russell , npiggin@suse.de, Ingo Molnar , Thomas Gleixner , Arjan van de Ven , jens.axboe@oracle.com Subject: Re: [PATCH -v2] use per cpu data for single cpu ipi calls In-Reply-To: Message-ID: References: <200901290955.38940.rusty@rustcorp.com.au> <20090128173039.cbc29e81.akpm@linux-foundation.org> <1233218954.7835.11.camel@twins> User-Agent: Alpine 1.10 (DEB 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: 1063 Lines: 29 On Thu, 29 Jan 2009, Steven Rostedt wrote: > > > > > But to be irq-safe, you now need to protect the _whole_ region against > > interrupts, because otherwise an incoming interrupt will hit while the > > CSD_FLAG_LOCK bit is set, perhaps _before_ the actual IPI has been sent, > > and now nothing will ever clear it. So the interrupt handler that tries to > > send an IPI will now spin forever. > > Again, this code is not allowed to run from an interrupt handler. > > > > > So NAK on this patch. I think the approach is correct, but the > > implementation is buggy. My whole assumption of this is that smp_call_function_single can not be called from an interrupt handler. If it can, then perhaps I just change the spinlock to the cmpxchg code, and put a: WARN_ON(cpu == smp_processor_id()); -- Steve -- 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/