NFS: rewrite directio read to use async coalesce code

This also has the advantage that it allows directio to use pnfs.

Signed-off-by: Fred Isaman <iisaman@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
Fred Isaman
2012-04-20 14:47:51 -04:00
committed by Trond Myklebust
parent 1825a0d08f
commit 584aa810b6
6 changed files with 139 additions and 145 deletions

View File

@@ -1208,6 +1208,7 @@ struct nfs_pgio_header {
const struct rpc_call_ops *mds_ops;
void (*release) (struct nfs_pgio_header *hdr);
const struct nfs_pgio_completion_ops *completion_ops;
struct nfs_direct_req *dreq;
spinlock_t lock;
/* fields protected by lock */
int pnfs_error;
@@ -1221,8 +1222,6 @@ struct nfs_read_header {
struct nfs_read_data rpc_data;
};
struct nfs_direct_req;
struct nfs_write_data {
struct nfs_pgio_header *header;
struct list_head list;
@@ -1264,6 +1263,7 @@ struct nfs_commit_data {
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);
};