diff options
Diffstat (limited to 'fs/nfs/internal.h')
-rw-r--r-- | fs/nfs/internal.h | 46 |
1 files changed, 33 insertions, 13 deletions
diff --git a/fs/nfs/internal.h b/fs/nfs/internal.h index 4644f04b4b46..72e0bddf7a2f 100644 --- a/fs/nfs/internal.h +++ b/fs/nfs/internal.h | |||
@@ -133,8 +133,7 @@ extern void nfs_put_client(struct nfs_client *); | |||
133 | extern struct nfs_client *nfs4_find_client_no_ident(const struct sockaddr *); | 133 | extern struct nfs_client *nfs4_find_client_no_ident(const struct sockaddr *); |
134 | extern struct nfs_client *nfs4_find_client_ident(int); | 134 | extern struct nfs_client *nfs4_find_client_ident(int); |
135 | extern struct nfs_client * | 135 | extern struct nfs_client * |
136 | nfs4_find_client_sessionid(const struct sockaddr *, struct nfs4_sessionid *, | 136 | nfs4_find_client_sessionid(const struct sockaddr *, struct nfs4_sessionid *); |
137 | int); | ||
138 | extern struct nfs_server *nfs_create_server( | 137 | extern struct nfs_server *nfs_create_server( |
139 | const struct nfs_parsed_mount_data *, | 138 | const struct nfs_parsed_mount_data *, |
140 | struct nfs_fh *); | 139 | struct nfs_fh *); |
@@ -149,6 +148,9 @@ extern struct nfs_server *nfs_clone_server(struct nfs_server *, | |||
149 | struct nfs_fattr *); | 148 | struct nfs_fattr *); |
150 | extern void nfs_mark_client_ready(struct nfs_client *clp, int state); | 149 | extern void nfs_mark_client_ready(struct nfs_client *clp, int state); |
151 | extern int nfs4_check_client_ready(struct nfs_client *clp); | 150 | extern int nfs4_check_client_ready(struct nfs_client *clp); |
151 | extern struct nfs_client *nfs4_set_ds_client(struct nfs_client* mds_clp, | ||
152 | const struct sockaddr *ds_addr, | ||
153 | int ds_addrlen, int ds_proto); | ||
152 | #ifdef CONFIG_PROC_FS | 154 | #ifdef CONFIG_PROC_FS |
153 | extern int __init nfs_fs_proc_init(void); | 155 | extern int __init nfs_fs_proc_init(void); |
154 | extern void nfs_fs_proc_exit(void); | 156 | extern void nfs_fs_proc_exit(void); |
@@ -164,10 +166,10 @@ static inline void nfs_fs_proc_exit(void) | |||
164 | 166 | ||
165 | /* nfs4namespace.c */ | 167 | /* nfs4namespace.c */ |
166 | #ifdef CONFIG_NFS_V4 | 168 | #ifdef CONFIG_NFS_V4 |
167 | extern struct vfsmount *nfs_do_refmount(const struct vfsmount *mnt_parent, struct dentry *dentry); | 169 | extern struct vfsmount *nfs_do_refmount(struct dentry *dentry); |
168 | #else | 170 | #else |
169 | static inline | 171 | static inline |
170 | struct vfsmount *nfs_do_refmount(const struct vfsmount *mnt_parent, struct dentry *dentry) | 172 | struct vfsmount *nfs_do_refmount(struct dentry *dentry) |
171 | { | 173 | { |
172 | return ERR_PTR(-ENOENT); | 174 | return ERR_PTR(-ENOENT); |
173 | } | 175 | } |
@@ -214,8 +216,14 @@ extern const u32 nfs41_maxwrite_overhead; | |||
214 | extern struct rpc_procinfo nfs4_procedures[]; | 216 | extern struct rpc_procinfo nfs4_procedures[]; |
215 | #endif | 217 | #endif |
216 | 218 | ||
219 | extern int nfs4_init_ds_session(struct nfs_client *clp); | ||
220 | |||
217 | /* proc.c */ | 221 | /* proc.c */ |
218 | void nfs_close_context(struct nfs_open_context *ctx, int is_sync); | 222 | void nfs_close_context(struct nfs_open_context *ctx, int is_sync); |
223 | extern int nfs_init_client(struct nfs_client *clp, | ||
224 | const struct rpc_timeout *timeparms, | ||
225 | const char *ip_addr, rpc_authflavor_t authflavour, | ||
226 | int noresvport); | ||
219 | 227 | ||
220 | /* dir.c */ | 228 | /* dir.c */ |
221 | extern int nfs_access_cache_shrinker(struct shrinker *shrink, | 229 | extern int nfs_access_cache_shrinker(struct shrinker *shrink, |
@@ -248,24 +256,30 @@ extern void nfs_sb_active(struct super_block *sb); | |||
248 | extern void nfs_sb_deactive(struct super_block *sb); | 256 | extern void nfs_sb_deactive(struct super_block *sb); |
249 | 257 | ||
250 | /* namespace.c */ | 258 | /* namespace.c */ |
251 | extern char *nfs_path(const char *base, | 259 | extern char *nfs_path(char **p, struct dentry *dentry, |
252 | const struct dentry *droot, | ||
253 | const struct dentry *dentry, | ||
254 | char *buffer, ssize_t buflen); | 260 | char *buffer, ssize_t buflen); |
255 | extern struct vfsmount *nfs_d_automount(struct path *path); | 261 | extern struct vfsmount *nfs_d_automount(struct path *path); |
256 | 262 | ||
257 | /* getroot.c */ | 263 | /* getroot.c */ |
258 | extern struct dentry *nfs_get_root(struct super_block *, struct nfs_fh *); | 264 | extern struct dentry *nfs_get_root(struct super_block *, struct nfs_fh *, |
265 | const char *); | ||
259 | #ifdef CONFIG_NFS_V4 | 266 | #ifdef CONFIG_NFS_V4 |
260 | extern struct dentry *nfs4_get_root(struct super_block *, struct nfs_fh *); | 267 | extern struct dentry *nfs4_get_root(struct super_block *, struct nfs_fh *, |
268 | const char *); | ||
261 | 269 | ||
262 | extern int nfs4_get_rootfh(struct nfs_server *server, struct nfs_fh *mntfh); | 270 | extern int nfs4_get_rootfh(struct nfs_server *server, struct nfs_fh *mntfh); |
263 | #endif | 271 | #endif |
264 | 272 | ||
265 | /* read.c */ | 273 | /* read.c */ |
274 | extern int nfs_initiate_read(struct nfs_read_data *data, struct rpc_clnt *clnt, | ||
275 | const struct rpc_call_ops *call_ops); | ||
266 | extern void nfs_read_prepare(struct rpc_task *task, void *calldata); | 276 | extern void nfs_read_prepare(struct rpc_task *task, void *calldata); |
267 | 277 | ||
268 | /* write.c */ | 278 | /* write.c */ |
279 | extern int nfs_initiate_write(struct nfs_write_data *data, | ||
280 | struct rpc_clnt *clnt, | ||
281 | const struct rpc_call_ops *call_ops, | ||
282 | int how); | ||
269 | extern void nfs_write_prepare(struct rpc_task *task, void *calldata); | 283 | extern void nfs_write_prepare(struct rpc_task *task, void *calldata); |
270 | #ifdef CONFIG_MIGRATION | 284 | #ifdef CONFIG_MIGRATION |
271 | extern int nfs_migrate_page(struct address_space *, | 285 | extern int nfs_migrate_page(struct address_space *, |
@@ -275,6 +289,13 @@ extern int nfs_migrate_page(struct address_space *, | |||
275 | #endif | 289 | #endif |
276 | 290 | ||
277 | /* nfs4proc.c */ | 291 | /* nfs4proc.c */ |
292 | extern void nfs4_reset_read(struct rpc_task *task, struct nfs_read_data *data); | ||
293 | extern int nfs4_init_client(struct nfs_client *clp, | ||
294 | const struct rpc_timeout *timeparms, | ||
295 | const char *ip_addr, | ||
296 | rpc_authflavor_t authflavour, | ||
297 | int noresvport); | ||
298 | extern void nfs4_reset_write(struct rpc_task *task, struct nfs_write_data *data); | ||
278 | extern int _nfs4_call_sync(struct nfs_server *server, | 299 | extern int _nfs4_call_sync(struct nfs_server *server, |
279 | struct rpc_message *msg, | 300 | struct rpc_message *msg, |
280 | struct nfs4_sequence_args *args, | 301 | struct nfs4_sequence_args *args, |
@@ -289,12 +310,11 @@ extern int _nfs4_call_sync_session(struct nfs_server *server, | |||
289 | /* | 310 | /* |
290 | * Determine the device name as a string | 311 | * Determine the device name as a string |
291 | */ | 312 | */ |
292 | static inline char *nfs_devname(const struct vfsmount *mnt_parent, | 313 | static inline char *nfs_devname(struct dentry *dentry, |
293 | const struct dentry *dentry, | ||
294 | char *buffer, ssize_t buflen) | 314 | char *buffer, ssize_t buflen) |
295 | { | 315 | { |
296 | return nfs_path(mnt_parent->mnt_devname, mnt_parent->mnt_root, | 316 | char *dummy; |
297 | dentry, buffer, buflen); | 317 | return nfs_path(&dummy, dentry, buffer, buflen); |
298 | } | 318 | } |
299 | 319 | ||
300 | /* | 320 | /* |