Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754394AbcKIVnA (ORCPT ); Wed, 9 Nov 2016 16:43:00 -0500 Received: from Galois.linutronix.de ([146.0.238.70]:59337 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752796AbcKIVm7 (ORCPT ); Wed, 9 Nov 2016 16:42:59 -0500 Date: Wed, 9 Nov 2016 22:40:24 +0100 (CET) From: Thomas Gleixner To: "Jason A. Donenfeld" cc: LKML , linux-mips@linux-mips.org, linux-mm@kvack.org, WireGuard mailing list , k@vodka.home.kg Subject: Re: Proposal: HAVE_SEPARATE_IRQ_STACK? In-Reply-To: Message-ID: References: User-Agent: Alpine 2.20 (DEB 67 2015-01-07) 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: 1174 Lines: 31 On Wed, 9 Nov 2016, Jason A. Donenfeld wrote: > But for the remaining platforms, such as MIPS, this is still a > problem. In an effort to work around this in my code, rather than > having to invoke kmalloc for what should be stack-based variables, I > was thinking I'd just disable preemption for those functions that use > a lot of stack, so that stack-hungry softirq handlers don't crush it. > This is generally unsatisfactory, so I don't want to do this > unconditionally. Instead, I'd like to do some cludge such as: > > #ifndef CONFIG_HAVE_SEPARATE_IRQ_STACK > preempt_disable(); That preempt_disable() prevents merily preemption as the name says, but it wont prevent softirq handlers from running on return from interrupt. So what's the point? > However, for this to work, I actual need that config variable. Would > you accept a patch that adds this config variable to the relavent > platforms? It might have been a good idea, to cc all relevant arch maintainers on that ... > If not, do you have a better solution for me (which doesn't > involve using kmalloc or choosing a different crypto primitive)? What's wrong with using kmalloc? Thanks, tglx