From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751055AbdAONjz (ORCPT ); Sun, 15 Jan 2017 08:39:55 -0500 Received: from frisell.zx2c4.com ([192.95.5.64]:42716 "EHLO frisell.zx2c4.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750831AbdAONjy (ORCPT ); Sun, 15 Jan 2017 08:39:54 -0500 MIME-Version: 1.0 In-Reply-To: <20170113094939.GI10569@jhogan-linux.le.imgtec.org> References: <1482157260-18730-1-git-send-email-matt.redfearn@imgtec.com> <20170111012032.GE31072@linux-mips.org> <20170113094939.GI10569@jhogan-linux.le.imgtec.org> From: "Jason A. Donenfeld" Date: Sun, 15 Jan 2017 14:39:49 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v3 0/5] MIPS: Add per-cpu IRQ stack To: James Hogan , Greg Kroah-Hartman Cc: Ralf Baechle , Matt Redfearn , linux-mips@linux-mips.org, Thomas Gleixner , Paolo Bonzini , Marcin Nowakowski , Chris Metcalf , Petr Mladek , LKML , Adam Buchbinder , Paul Burton , Jiri Slaby , "Maciej W. Rozycki" , Aaron Tomlin , Andrew Morton Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi James, On Fri, Jan 13, 2017 at 10:49 AM, James Hogan wrote: > Its quite a significant change/feature, especially in terms of potential > for further breakage. I don't think its really stable material to be > honest. It sounds bad if the kernel stack requirement can be made > arbitrarily large by stacking too many drivers. Indeed I believe this is the case. If, say, a kthread is already using a bit of stack, and then a softirq chain of stacked virtual network drivers is called, the stack can be busted. > Is there a simpler fix/workaround for the issue that would satisfy > stable kernel users until they can upgrade to a kernel with irqstacks? The simplest solution is probably just not stacking tons of network drivers. For my own out-of-tree curve25519-donna code that's in OpenWRT and uses a fair amount of stack, I just kmalloc on MIPS but not on x86, so in terms of my own stuff there's already a workaround in place. But this still doesn't solve things for users who have some interesting networking requirements and stack a few drivers. Unfortunately, most folks are only testing stuff on ARM and x86, which already have the separate IRQ stacks, so they aren't hitting crashes. So, in the end, I'm not quite sure. On the one hand, this fixes an actual problem and it'd be nice to see stable kernels have the fix. On the other hand, this is a rather big change. I don't know how to assess it, but I've copied Greg on this email, who certainly has better judgement about this than me. Jason