diff -u --recursive --new-file linux-2.4.23-rc1/fs/nfs/write.c linux-2.4.23-01-fix_commit/fs/nfs/write.c --- linux-2.4.23-rc1/fs/nfs/write.c 2003-11-16 19:24:23.000000000 -0500 +++ linux-2.4.23-01-fix_commit/fs/nfs/write.c 2003-11-16 19:33:59.000000000 -0500 @@ -1268,15 +1268,14 @@ } #ifdef CONFIG_NFS_V3 -int nfs_commit_file(struct inode *inode, struct file *file, unsigned long idx_start, - unsigned int npages, int how) +int nfs_commit_file(struct inode *inode, struct file *file, int how) { LIST_HEAD(head); int res, error = 0; spin_lock(&nfs_wreq_lock); - res = nfs_scan_commit(inode, &head, file, idx_start, npages); + res = nfs_scan_commit(inode, &head, file, 0, 0); spin_unlock(&nfs_wreq_lock); if (res) error = nfs_commit_list(&head, how); @@ -1306,7 +1305,7 @@ error = nfs_flush_file(inode, file, idx_start, npages, how); #ifdef CONFIG_NFS_V3 if (error == 0) - error = nfs_commit_file(inode, file, idx_start, npages, how); + error = nfs_commit_file(inode, file, how); #endif } while (error > 0); return error; diff -u --recursive --new-file linux-2.4.23-rc1/include/linux/nfs_fs.h linux-2.4.23-01-fix_commit/include/linux/nfs_fs.h --- linux-2.4.23-rc1/include/linux/nfs_fs.h 2003-11-16 19:26:05.000000000 -0500 +++ linux-2.4.23-01-fix_commit/include/linux/nfs_fs.h 2003-11-16 19:34:22.000000000 -0500 @@ -215,7 +215,7 @@ extern int nfs_scan_lru_dirty(struct nfs_server *, struct list_head *); extern int nfs_scan_lru_dirty_timeout(struct nfs_server *, struct list_head *); #ifdef CONFIG_NFS_V3 -extern int nfs_commit_file(struct inode *, struct file *, unsigned long, unsigned int, int); +extern int nfs_commit_file(struct inode *, struct file *, int); extern int nfs_commit_list(struct list_head *, int); extern int nfs_scan_lru_commit(struct nfs_server *, struct list_head *); extern int nfs_scan_lru_commit_timeout(struct nfs_server *, struct list_head *);