[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20120522142835.50b86ddc.akpm@linux-foundation.org>
Date: Tue, 22 May 2012 14:28:35 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Christoph Lameter <cl@...ux.com>
Cc: Dave Hansen <dave@...ux.vnet.ibm.com>,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
aarcange@...hat.com, kosaki.motohiro@...fujitsu.com,
hughd@...gle.com, rientjes@...gle.com, adobriyan@...il.com,
mel@....ul.ie, stable@...r.kernel.org
Subject: Re: [PATCH] hugetlb: fix resv_map leak in error path
On Tue, 22 May 2012 16:05:02 -0500 (CDT)
Christoph Lameter <cl@...ux.com> wrote:
> > How far back does this bug go? The patch applies to 3.4 but gets
> > rejects in 3.3 and earlier.
>
> The earliest that I have seen it on was 2.6.32. I have rediffed the patch
> against 2.6.32 and 3.2.0.
Great, thanks. I did
: From: Dave Hansen <dave@...ux.vnet.ibm.com>
: Subject: hugetlb: fix resv_map leak in error path
:
: When called for anonymous (non-shared) mappings, hugetlb_reserve_pages()
: does a resv_map_alloc(). It depends on code in hugetlbfs's
: vm_ops->close() to release that allocation.
:
: However, in the mmap() failure path, we do a plain unmap_region() without
: the remove_vma() which actually calls vm_ops->close().
:
: This is a decent fix. This leak could get reintroduced if new code (say,
: after hugetlb_reserve_pages() in hugetlbfs_file_mmap()) decides to return
: an error. But, I think it would have to unroll the reservation anyway.
:
: Christoph's test case:
:
: http://marc.info/?l=linux-mm&m=133728900729735
:
: This patch applies to 3.4 and later. A version for earlier kernels is at
: https://lkml.org/lkml/2012/5/22/418.
:
: Signed-off-by: Dave Hansen <dave@...ux.vnet.ibm.com>
: Acked-by: Mel Gorman <mel@....ul.ie>
: Acked-by: KOSAKI Motohiro <kosaki.motohiro@...fujitsu.com>
: Reported-by: Christoph Lameter <cl@...ux.com>
: Tested-by: Christoph Lameter <cl@...ux.com>
: Cc: Andrea Arcangeli <aarcange@...hat.com>
: Cc: <stable@...r.kernel.org> [2.6.32+]
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists