Re: [PATCH] cifs: fix page refcount leak

Nick Piggin <[email protected]> Wed, 26 May 2010 02:54:30 +1000
Newsgroups gmane.linux.file-systems,gmane.linux.file-systems.cifs
Message-ID <20100525165430.GG20853@laptop>
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 <[email protected]>
> Cc: Nick Piggin <[email protected]>

Acked-by: Nick Piggin <[email protected]>

> ---
>  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
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html