From 31ad66b690d64076adbd97666a91a64ffc787e4c Mon Sep 17 00:00:00 2001 From: Jeff Layton Date: Fri, 23 Mar 2012 14:40:56 -0400 Subject: [PATCH] --- yaml --- r: 297974 b: refs/heads/master c: e94f7ba124bfbd3898f620c46891ebcfb9cf20d0 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/cifs/file.c | 13 ++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/[refs] b/[refs] index bb8d072f70e4..899ee21a86b4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c2e8764009a0245fd24fcd2a63ffbf64236af016 +refs/heads/master: e94f7ba124bfbd3898f620c46891ebcfb9cf20d0 diff --git a/trunk/fs/cifs/file.c b/trunk/fs/cifs/file.c index f624c4d4a393..70bd5464ffdf 100644 --- a/trunk/fs/cifs/file.c +++ b/trunk/fs/cifs/file.c @@ -2045,7 +2045,7 @@ cifs_write_allocate_pages(struct page **pages, unsigned long num_pages) unsigned long i; for (i = 0; i < num_pages; i++) { - pages[i] = alloc_page(__GFP_HIGHMEM); + pages[i] = alloc_page(GFP_KERNEL|__GFP_HIGHMEM); if (!pages[i]) { /* * save number of pages we have already allocated and @@ -2053,15 +2053,14 @@ cifs_write_allocate_pages(struct page **pages, unsigned long num_pages) */ num_pages = i; rc = -ENOMEM; - goto error; + break; } } - return rc; - -error: - for (i = 0; i < num_pages; i++) - put_page(pages[i]); + if (rc) { + for (i = 0; i < num_pages; i++) + put_page(pages[i]); + } return rc; }