[linux-cifs-client] [PATCH] cifs: fix page refcount leak
Nick Piggin
npiggin at suse.de
Tue May 25 10:54:30 MDT 2010
On Tue, May 25, 2010 at 12:28:37PM -0400, Jeff Layton wrote:
> Commit 315e995c63a15cb4d4efdbfd70fe2db191917f7a is causing OOM kills
> when stress-testing a CIFS filesystem. The VFS readpages operation takes
> a page reference. The older code just handed this reference off to the
> page cache, but the new code takes an extra one. The simplest fix is to
> put the new reference after add_to_page_cache_lru.
>
> Signed-off-by: Jeff Layton <jlayton at redhat.com>
> Cc: Nick Piggin <npiggin at suse.de>
Acked-by: Nick Piggin <npiggin at suse.de>
> ---
> fs/cifs/file.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/fs/cifs/file.c b/fs/cifs/file.c
> index 310533d..29ca398 100644
> --- a/fs/cifs/file.c
> +++ b/fs/cifs/file.c
> @@ -1919,6 +1919,7 @@ static void cifs_copy_cache_pages(struct address_space *mapping,
> bytes_read -= PAGE_CACHE_SIZE;
> continue;
> }
> + page_cache_release(page);
>
> target = kmap_atomic(page, KM_USER0);
>
> --
> 1.6.6.1
More information about the linux-cifs-client
mailing list