Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753137Ab3IWElk (ORCPT ); Mon, 23 Sep 2013 00:41:40 -0400 Received: from gate.crashing.org ([63.228.1.57]:34534 "EHLO gate.crashing.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751835Ab3IWElj (ORCPT ); Mon, 23 Sep 2013 00:41:39 -0400 Message-ID: <1379911234.6625.7.camel@pasglop> Subject: Re: [RFC GIT PULL] softirq: Consolidation and stack overrun fix From: Benjamin Herrenschmidt To: Frederic Weisbecker Cc: Linus Torvalds , Thomas Gleixner , LKML , Paul Mackerras , Ingo Molnar , Peter Zijlstra , "H. Peter Anvin" , James Hogan , "James E.J. Bottomley" , Helge Deller , Martin Schwidefsky , Heiko Carstens , "David S. Miller" , Andrew Morton Date: Mon, 23 Sep 2013 14:40:34 +1000 In-Reply-To: <1379799901.24090.6.camel@pasglop> References: <1379620267-25191-1-git-send-email-fweisbec@gmail.com> <20130920162603.GA30381@localhost.localdomain> <1379799901.24090.6.camel@pasglop> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.6.4-0ubuntu1 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1217 Lines: 30 On Sun, 2013-09-22 at 07:45 +1000, Benjamin Herrenschmidt wrote: > What I *can* do that would help I suppose would be to switch to the irq > stack before irq_enter/exit which would at least mean that softirq would > run from the top of the irq stack which is better than the current > situation. > > I'm fact I'll whip up a quick fix see if that might be enough of a band > aid for RHEL7. OK I've done that, it seems to work so far. Heads up guys: i386 and sparc at least seem to need the same treatment. I haven't looked at others except ARM which doesn't seem to have irq stacks to begin with. We can also instead apply Fred's series to put back in the switch to the softirq stack since this is actually a regression , but then, arguably, making sure irq_exit() is called off the irq stack is better and means we do one instead of two stack switches. Fred: Maybe revert partially under an arch #define/Kconfig so we can get the best of both worlds ? Cheers, Ben. -- 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/