patch-2.1.129 linux/fs/nfs/read.c

Next file: linux/fs/nfs/write.c
Previous file: linux/fs/nfs/inode.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.128/linux/fs/nfs/read.c linux/fs/nfs/read.c
@@ -225,7 +225,7 @@
 {
 	struct dentry *dentry = file->f_dentry;
 	struct inode *inode = dentry->d_inode;
-	int		error = -1;
+	int		error;
 
 	dprintk("NFS: nfs_readpage (%p %ld@%ld)\n",
 		page, PAGE_SIZE, page->offset);
@@ -235,12 +235,14 @@
 	 * Try to flush any pending writes to the file..
 	 *
 	 * NOTE! Because we own the page lock, there cannot
-	 * be any new pending writes generated at this point.
+	 * be any new pending writes generated at this point
+	 * for this page (other pages can be written to).
 	 */
-	error = nfs_flush_pages(inode, 0, 0, 0);
+	error = nfs_wb_page(inode, page);
 	if (error)
 		return error;
 
+	error = -1;
 	atomic_inc(&page->count);
 	if (!IS_SWAPFILE(inode) && !PageError(page) &&
 	    NFS_SERVER(inode)->rsize >= PAGE_SIZE)

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov