X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=fs%2Flibfs.c;h=cf79196535ec5fc277f2dc9f190a3cc7e551dcd6;hb=955eff5acc8b8cd1c7d4eec0229c35eaabe013db;hp=7d487047dbb8814ea1d5f0a01c9e30c630d9a322;hpb=902b236c087bf021c94cc21a2b09d928c4156c2b;p=deliverable%2Flinux.git diff --git a/fs/libfs.c b/fs/libfs.c index 7d487047dbb8..cf79196535ec 100644 --- a/fs/libfs.c +++ b/fs/libfs.c @@ -335,17 +335,18 @@ int simple_prepare_write(struct file *file, struct page *page, flush_dcache_page(page); kunmap_atomic(kaddr, KM_USER0); } - SetPageUptodate(page); } return 0; } int simple_commit_write(struct file *file, struct page *page, - unsigned offset, unsigned to) + unsigned from, unsigned to) { struct inode *inode = page->mapping->host; loff_t pos = ((loff_t)page->index << PAGE_CACHE_SHIFT) + to; + if (!PageUptodate(page)) + SetPageUptodate(page); /* * No need to use i_size_read() here, the i_size * cannot change under us because we hold the i_mutex.