From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vineet Gupta Subject: Re: Interesting csd deadlock on ARC Date: Wed, 24 Feb 2016 10:15:34 +0530 Message-ID: <56CD356E.3010704@synopsys.com> References: <56C6BA82.1060909@synopsys.com> <56CBEC66.2030401@synopsys.com> <20160223095824.GH6356@twins.programming.kicks-ass.net> <56CC32A3.5020804@synopsys.com> <20160223103950.GJ6356@twins.programming.kicks-ass.net> Mime-Version: 1.0 Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org To: Noam Camus , Peter Zijlstra Cc: "linux-arch@vger.kernel.org" , Marc Zyngier , Frederic Weisbecker , lkml , arcml List-Id: linux-arch.vger.kernel.org On Tuesday 23 February 2016 04:28 PM, Noam Camus wrote: >> From: Peter Zijlstra [mailto:peterz@infradead.org] >> Sent: Tuesday, February 23, 2016 12:40 PM > >> The only requirement for irq_work is that it runs after the NMI completes and runs from regular IRQ context. >There are no strict interrupt priority requirements, only that it happens. > > We here already use self IPI and irq_work on ARC (with no NMI concerns). > Please see patch at: > https://github.com/EZchip/linux/commit/e42556738e610295f917c79dae166373cd11de88 So this relies on 2nd level intc providing the IPI. For UP we still need the software triggered interrupt provided by core intc. From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vineet.Gupta1@synopsys.com (Vineet Gupta) Date: Wed, 24 Feb 2016 10:15:34 +0530 Subject: Interesting csd deadlock on ARC In-Reply-To: References: <56C6BA82.1060909@synopsys.com> <56CBEC66.2030401@synopsys.com> <20160223095824.GH6356@twins.programming.kicks-ass.net> <56CC32A3.5020804@synopsys.com> <20160223103950.GJ6356@twins.programming.kicks-ass.net> List-ID: Message-ID: <56CD356E.3010704@synopsys.com> To: linux-snps-arc@lists.infradead.org On Tuesday 23 February 2016 04:28 PM, Noam Camus wrote: >> From: Peter Zijlstra [mailto:peterz at infradead.org] >> Sent: Tuesday, February 23, 2016 12:40 PM > >> The only requirement for irq_work is that it runs after the NMI completes and runs from regular IRQ context. >There are no strict interrupt priority requirements, only that it happens. > > We here already use self IPI and irq_work on ARC (with no NMI concerns). > Please see patch at: > https://github.com/EZchip/linux/commit/e42556738e610295f917c79dae166373cd11de88 So this relies on 2nd level intc providing the IPI. For UP we still need the software triggered interrupt provided by core intc.