diff options
| author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-06 15:22:57 -0800 |
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-06 15:22:57 -0800 |
| commit | 47853e7fa588bef826c9799a87b33904b32bd905 (patch) | |
| tree | bd7681d1aedf28125b86fb0218e64297f4d71ac9 /mm/page-writeback.c | |
| parent | 221fc10ec89834329e5613e3cab4569ba22da410 (diff) | |
| parent | 9e56904e41e242169007e69d9916059dab995d90 (diff) | |
Merge git://git.linux-nfs.org/pub/linux/nfs-2.6
Diffstat (limited to 'mm/page-writeback.c')
| -rw-r--r-- | mm/page-writeback.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/mm/page-writeback.c b/mm/page-writeback.c index 0166ea15c9ee..5240e426c1f7 100644 --- a/mm/page-writeback.c +++ b/mm/page-writeback.c @@ -550,11 +550,17 @@ void __init page_writeback_init(void) int do_writepages(struct address_space *mapping, struct writeback_control *wbc) { + int ret; + if (wbc->nr_to_write <= 0) return 0; + wbc->for_writepages = 1; if (mapping->a_ops->writepages) - return mapping->a_ops->writepages(mapping, wbc); - return generic_writepages(mapping, wbc); + ret = mapping->a_ops->writepages(mapping, wbc); + else + ret = generic_writepages(mapping, wbc); + wbc->for_writepages = 0; + return ret; } /** |
