diff options
author | David Howells | 2007-05-16 08:57:04 +0200 |
---|---|---|
committer | Linus Torvalds | 2007-05-17 06:19:15 +0200 |
commit | bb33ed6345d6156484f39089aa8b52f44ce76609 (patch) | |
tree | c27f2b0f62efceca5ab2289b524e688ec1c9d0f0 | |
parent | slub: don't confuse ctor and dtor (diff) | |
download | kernel-qcow2-linux-bb33ed6345d6156484f39089aa8b52f44ce76609.tar.gz kernel-qcow2-linux-bb33ed6345d6156484f39089aa8b52f44ce76609.tar.xz kernel-qcow2-linux-bb33ed6345d6156484f39089aa8b52f44ce76609.zip |
AFS: Fix afs_prepare_write()
afs_prepare_write() should not mark a page up to date if it only partially
fills it in, in expectation of the caller filling in the rest prior to calling
commit_write(). commit_write(), however, should mark the page up to date.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | fs/afs/write.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/fs/afs/write.c b/fs/afs/write.c index 28f37516c126..a03b92a0fe1d 100644 --- a/fs/afs/write.c +++ b/fs/afs/write.c @@ -206,7 +206,6 @@ int afs_prepare_write(struct file *file, struct page *page, _leave(" = %d [prep]", ret); return ret; } - SetPageUptodate(page); } try_again: @@ -311,8 +310,8 @@ int afs_commit_write(struct file *file, struct page *page, spin_unlock(&vnode->writeback_lock); } + SetPageUptodate(page); set_page_dirty(page); - if (PageDirty(page)) _debug("dirtied"); |