diff options
| author | Steve French <sfrench@hera.kernel.org> | 2005-06-09 17:44:07 -0400 |
|---|---|---|
| committer | Steve French <sfrench@hera.kernel.org> | 2005-06-09 17:44:07 -0400 |
| commit | 3079ca621e9e09f4593c20a9a2f24237c355f683 (patch) | |
| tree | 0eb2e22cb0fa382cde357f9e6125043d1cdd3758 | |
| parent | 0b68177ccd12866d9f19cafad212b861c9d02a8c (diff) | |
[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)
| -rw-r--r-- | fs/cifs/CHANGES | 3 | ||||
| -rw-r--r-- | fs/cifs/file.c | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/fs/cifs/CHANGES b/fs/cifs/CHANGES index 95483baab706..dab4774ee7bb 100644 --- a/fs/cifs/CHANGES +++ b/fs/cifs/CHANGES | |||
| @@ -6,7 +6,8 @@ kills the cifsd thread (NB: killing the cifs kernel threads is not | |||
| 6 | recommended, unmount and rmmod cifs will kill them when they are | 6 | recommended, unmount and rmmod cifs will kill them when they are |
| 7 | no longer needed). Fix readdir to ASCII servers (ie older servers | 7 | no longer needed). Fix readdir to ASCII servers (ie older servers |
| 8 | which do not support Unicode) and also require asterik. | 8 | which do not support Unicode) and also require asterik. |
| 9 | 9 | Fix out of memory case in which data could be written one page | |
| 10 | off in the page cache. | ||
| 10 | 11 | ||
| 11 | Version 1.33 | 12 | Version 1.33 |
| 12 | ------------ | 13 | ------------ |
diff --git a/fs/cifs/file.c b/fs/cifs/file.c index dde2d251fc3d..30ab70ce5547 100644 --- a/fs/cifs/file.c +++ b/fs/cifs/file.c | |||
| @@ -1352,6 +1352,8 @@ static void cifs_copy_cache_pages(struct address_space *mapping, | |||
| 1352 | GFP_KERNEL)) { | 1352 | GFP_KERNEL)) { |
| 1353 | page_cache_release(page); | 1353 | page_cache_release(page); |
| 1354 | cFYI(1, ("Add page cache failed")); | 1354 | cFYI(1, ("Add page cache failed")); |
| 1355 | data += PAGE_CACHE_SIZE; | ||
| 1356 | bytes_read -= PAGE_CACHE_SIZE; | ||
| 1355 | continue; | 1357 | continue; |
| 1356 | } | 1358 | } |
| 1357 | 1359 | ||
