diff options
author | Trond Myklebust <trond.myklebust@primarydata.com> | 2015-12-31 11:44:06 -0500 |
---|---|---|
committer | Trond Myklebust <trond.myklebust@primarydata.com> | 2015-12-31 13:50:42 -0500 |
commit | dc602dd706cb64036132a7903ead1c67d9a7bcb9 (patch) | |
tree | 88d632825b446b8445a0219c3ac24a00a1d2853b /include/linux/nfs_xdr.h | |
parent | e07db907eb80525874b7707c62cc6f5e975ef130 (diff) | |
download | linux-dc602dd706cb64036132a7903ead1c67d9a7bcb9.tar.gz linux-dc602dd706cb64036132a7903ead1c67d9a7bcb9.tar.bz2 linux-dc602dd706cb64036132a7903ead1c67d9a7bcb9.zip |
NFS/pNFS: Fix up pNFS write reschedule layering violations and bugs
The flexfiles layout in particular, seems to want to poke around in the
O_DIRECT flags when retransmitting.
This patch sets up an interface to allow it to call back into O_DIRECT
to handle retransmission correctly. It also fixes a potential bug whereby
we could change the behaviour of O_DIRECT if an error is already pending.
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'include/linux/nfs_xdr.h')
-rw-r--r-- | include/linux/nfs_xdr.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h index 11bbae44f4cb..e89dbb14138c 100644 --- a/include/linux/nfs_xdr.h +++ b/include/linux/nfs_xdr.h @@ -1460,6 +1460,7 @@ struct nfs_pgio_completion_ops { void (*error_cleanup)(struct list_head *head); void (*init_hdr)(struct nfs_pgio_header *hdr); void (*completion)(struct nfs_pgio_header *hdr); + void (*reschedule_io)(struct nfs_pgio_header *hdr); }; struct nfs_unlinkdata { |