[CIFS] Fix cifs update of page cache. Write at correct offset when out of memory
and add_to_page_cache fails. Thanks to Shaggy for pointing out the fix. Signed-off-by: Steve French (sfrench@us.ibm.com) Signed-off-by: Shaggy (shaggy@us.ibm.com)
This commit is contained in:
parent
0b68177ccd
commit
3079ca621e
2 changed files with 4 additions and 1 deletions
|
@ -6,7 +6,8 @@ kills the cifsd thread (NB: killing the cifs kernel threads is not
|
||||||
recommended, unmount and rmmod cifs will kill them when they are
|
recommended, unmount and rmmod cifs will kill them when they are
|
||||||
no longer needed). Fix readdir to ASCII servers (ie older servers
|
no longer needed). Fix readdir to ASCII servers (ie older servers
|
||||||
which do not support Unicode) and also require asterik.
|
which do not support Unicode) and also require asterik.
|
||||||
|
Fix out of memory case in which data could be written one page
|
||||||
|
off in the page cache.
|
||||||
|
|
||||||
Version 1.33
|
Version 1.33
|
||||||
------------
|
------------
|
||||||
|
|
|
@ -1352,6 +1352,8 @@ static void cifs_copy_cache_pages(struct address_space *mapping,
|
||||||
GFP_KERNEL)) {
|
GFP_KERNEL)) {
|
||||||
page_cache_release(page);
|
page_cache_release(page);
|
||||||
cFYI(1, ("Add page cache failed"));
|
cFYI(1, ("Add page cache failed"));
|
||||||
|
data += PAGE_CACHE_SIZE;
|
||||||
|
bytes_read -= PAGE_CACHE_SIZE;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue