Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753163AbdFVN2w (ORCPT ); Thu, 22 Jun 2017 09:28:52 -0400 Received: from wtarreau.pck.nerim.net ([62.212.114.60]:53243 "EHLO 1wt.eu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752935AbdFVN2v (ORCPT ); Thu, 22 Jun 2017 09:28:51 -0400 Date: Thu, 22 Jun 2017 15:28:14 +0200 From: Willy Tarreau To: Ben Hutchings Cc: Hugh Dickins , Linus Torvalds , Oleg Nesterov , Michal Hocko , "Jason A. Donenfeld" , Rik van Riel , Larry Woodman , "Kirill A. Shutemov" , Tony Luck , "James E.J. Bottomley" , Helge Diller , James Hogan , Laura Abbott , Greg KH , security@kernel.org, linux-distros@vs.openwall.org, qsa@qualys.com, stable , LKML Subject: Re: [PATCH] mm: larger stack guard gap, between vmas Message-ID: <20170622132814.GG22510@1wt.eu> References: <20170622123045.GA2694@decadent.org.uk> <20170622124659.GE22510@1wt.eu> <1498136291.2655.24.camel@decadent.org.uk> <20170622131034.GF22510@1wt.eu> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20170622131034.GF22510@1wt.eu> User-Agent: Mutt/1.6.1 (2016-04-27) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1813 Lines: 36 On Thu, Jun 22, 2017 at 03:10:34PM +0200, Willy Tarreau wrote: > On Thu, Jun 22, 2017 at 01:58:11PM +0100, Ben Hutchings wrote: > > On Thu, 2017-06-22 at 14:46 +0200, Willy Tarreau wrote: > > > On Thu, Jun 22, 2017 at 01:30:45PM +0100, Ben Hutchings wrote: > > > > Here's my attempt at a backport to 3.2.??This is only tested on > > > > x86_64 and I think I should introduce local variables for > > > > vma_start_gap() in a few places.??I had to cherry-pick commit > > > > 09884964335e "mm: do not grow the stack vma just because of an overrun > > > > on preceding vma" before this one (which was a clean cherry-pick). > > > > > > Ben, I can't apply it on top of 3.2.89 + the patch above, do you have > > > any other patch in your local branch ? For example the patch tries to > > > modify a hunk starting at line 183 of arch/arm/mm/mmap.c while the one > > > I'm having here ends at line 159. > > > > Sorry, yes, I did this on top of the Debian 3.2 branch and that *does* > > have a patch to arch/arm/mm/mmap.c that I had forgotten about (commit > > 7dbaa466780a "ARM: 7169/1: topdown mmap support"). I think you can > > just drop the changes in ARM's arch_get_unmapped_area_topdown(). > > Thanks, I've just applied this one and it's building now. I'll run the > same checks I did for 3.10. So I tested this with gap.c on an i386 VM running 2G/2G split memory, all went fine. It properly stopped the stack growth before colliding with anon pages. I noticed that you included Hugh's last fix in it (mm: fix new crash in unmapped_area_topdown). You'll also need Helge's fix bd726c90b ("Allow stack to grow up to address space limit"), which applies without issues on top of your patch. I would have happily tested on an ARM board but I don't seem to have 3.2-compatible ARM boards with 2G of RAM :-/ Willy