Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934468AbdHYVC1 (ORCPT ); Fri, 25 Aug 2017 17:02:27 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:42734 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932319AbdHYVC0 (ORCPT ); Fri, 25 Aug 2017 17:02:26 -0400 Date: Fri, 25 Aug 2017 23:02:18 +0200 (CEST) From: Thomas Gleixner To: Vineet Gupta cc: Noam Camus , linux-snps-arc@lists.infradead.org, noamikong@gmail.com, linux-kernel@vger.kernel.org, Peter Zijlstra , Steven Rostedt Subject: Re: [PATCH v3 03/11] ARC: Allow irq threading In-Reply-To: Message-ID: References: <1497516241-16446-1-git-send-email-noamca@mellanox.com> <1497516241-16446-4-git-send-email-noamca@mellanox.com> <12582c31-9ff0-708c-5c85-1e31efd2a170@synopsys.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Linutronix-Spam-Score: -1.0 X-Linutronix-Spam-Level: - X-Linutronix-Spam-Status: No , -1.0 points, 5.0 required, ALL_TRUSTED=-1,SHORTCIRCUIT=-0.0001 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 960 Lines: 25 On Fri, 25 Aug 2017, Thomas Gleixner wrote: > On Fri, 25 Aug 2017, Vineet Gupta wrote: > > On 06/15/2017 01:43 AM, Noam Camus wrote: > > > From: Noam Camus > > > > > > Working with NPS400 we noticed that there is a possibility of L1 > > > interrupt nesting that may run out kernel stack. > > > The scenario include serving invoke_softirqs() from irq_exit() > > > and once local_irq_enable() called can hit another one before we > > > managed to restore last one and pop some place from kernel stack. > > > > > > Serving softirqs at dedicated kernel thread may mitigate this. > > > We see that many architectures, including x86, behave like this. > > Well, no. x86 supports that, but that does not mean many user add it to the > command line. The real fix for that is to use dedicated irq and softirq stacks instead of using the potentially deep thread stack for everything. That's what x86 and others do unconditinally. Thanks, tglx