diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2011-06-10 13:30:23 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2011-07-12 13:40:28 -0400 |
commit | d8007d4dd6ff8749cc8a4063c3ec87442db76d82 (patch) | |
tree | f778176d24666f2e2c7cd7ef4dc5917aa11cc207 /fs/nfs/pnfs.h | |
parent | 1751c3638f2a07a8c66a803a31791bab9bd3fced (diff) |
NFSv4.1: Add an initialisation callback for pNFS
Ensure that we always get a layout before setting up the i/o request.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/pnfs.h')
-rw-r--r-- | fs/nfs/pnfs.h | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/fs/nfs/pnfs.h b/fs/nfs/pnfs.h index 137a2bd5c8c7..dd54351ae6ac 100644 --- a/fs/nfs/pnfs.h +++ b/fs/nfs/pnfs.h | |||
@@ -149,10 +149,6 @@ extern int nfs4_proc_layoutreturn(struct nfs4_layoutreturn *lrp); | |||
149 | /* pnfs.c */ | 149 | /* pnfs.c */ |
150 | void get_layout_hdr(struct pnfs_layout_hdr *lo); | 150 | void get_layout_hdr(struct pnfs_layout_hdr *lo); |
151 | void put_lseg(struct pnfs_layout_segment *lseg); | 151 | void put_lseg(struct pnfs_layout_segment *lseg); |
152 | struct pnfs_layout_segment * | ||
153 | pnfs_update_layout(struct inode *ino, struct nfs_open_context *ctx, | ||
154 | loff_t pos, u64 count, enum pnfs_iomode access_type, | ||
155 | gfp_t gfp_flags); | ||
156 | 152 | ||
157 | bool pnfs_pageio_init_read(struct nfs_pageio_descriptor *, struct inode *); | 153 | bool pnfs_pageio_init_read(struct nfs_pageio_descriptor *, struct inode *); |
158 | bool pnfs_pageio_init_write(struct nfs_pageio_descriptor *, struct inode *, int); | 154 | bool pnfs_pageio_init_write(struct nfs_pageio_descriptor *, struct inode *, int); |
@@ -163,6 +159,8 @@ enum pnfs_try_status pnfs_try_to_write_data(struct nfs_write_data *, | |||
163 | const struct rpc_call_ops *, int); | 159 | const struct rpc_call_ops *, int); |
164 | enum pnfs_try_status pnfs_try_to_read_data(struct nfs_read_data *, | 160 | enum pnfs_try_status pnfs_try_to_read_data(struct nfs_read_data *, |
165 | const struct rpc_call_ops *); | 161 | const struct rpc_call_ops *); |
162 | void pnfs_generic_pg_init_read(struct nfs_pageio_descriptor *, struct nfs_page *); | ||
163 | void pnfs_generic_pg_init_write(struct nfs_pageio_descriptor *, struct nfs_page *); | ||
166 | bool pnfs_generic_pg_test(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev, struct nfs_page *req); | 164 | bool pnfs_generic_pg_test(struct nfs_pageio_descriptor *pgio, struct nfs_page *prev, struct nfs_page *req); |
167 | int pnfs_layout_process(struct nfs4_layoutget *lgp); | 165 | int pnfs_layout_process(struct nfs4_layoutget *lgp); |
168 | void pnfs_free_lseg_list(struct list_head *tmp_list); | 166 | void pnfs_free_lseg_list(struct list_head *tmp_list); |
@@ -318,14 +316,6 @@ static inline void put_lseg(struct pnfs_layout_segment *lseg) | |||
318 | { | 316 | { |
319 | } | 317 | } |
320 | 318 | ||
321 | static inline struct pnfs_layout_segment * | ||
322 | pnfs_update_layout(struct inode *ino, struct nfs_open_context *ctx, | ||
323 | loff_t pos, u64 count, enum pnfs_iomode access_type, | ||
324 | gfp_t gfp_flags) | ||
325 | { | ||
326 | return NULL; | ||
327 | } | ||
328 | |||
329 | static inline enum pnfs_try_status | 319 | static inline enum pnfs_try_status |
330 | pnfs_try_to_read_data(struct nfs_read_data *data, | 320 | pnfs_try_to_read_data(struct nfs_read_data *data, |
331 | const struct rpc_call_ops *call_ops) | 321 | const struct rpc_call_ops *call_ops) |