浏览代码

NFS: Ensure we immediately start writeback on rescheduled writes

If the writes are being rescheduled due to a pNFS error, then we really
want to immediately start a new flush. The O_DIRECT code already does
this, so we only need to worry about buffered writes.

Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Trond Myklebust 7 年之前
父节点
当前提交
7be7b3ca16
共有 1 个文件被更改,包括 2 次插入0 次删除
  1. 2 0
      fs/nfs/write.c

+ 2 - 0
fs/nfs/write.c

@@ -1406,6 +1406,8 @@ static void nfs_async_write_error(struct list_head *head)
 static void nfs_async_write_reschedule_io(struct nfs_pgio_header *hdr)
 static void nfs_async_write_reschedule_io(struct nfs_pgio_header *hdr)
 {
 {
 	nfs_async_write_error(&hdr->pages);
 	nfs_async_write_error(&hdr->pages);
+	filemap_fdatawrite_range(hdr->inode->i_mapping, hdr->args.offset,
+			hdr->args.offset + hdr->args.count - 1);
 }
 }
 
 
 static const struct nfs_pgio_completion_ops nfs_async_write_completion_ops = {
 static const struct nfs_pgio_completion_ops nfs_async_write_completion_ops = {