aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/exportfs.h
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2007-10-21 19:42:16 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-22 11:13:21 -0400
commitcfaea787c05822acbb4d8963baee5edd1cc0258f (patch)
tree471ab4a45baa9c2dd6423c345a1668366b6846fc /include/linux/exportfs.h
parent644f9ab3b0aa386820ce709de747d46b4cece16f (diff)
exportfs: remove old methods
Now that all filesystems are converted remove support for the old methods. Signed-off-by: Christoph Hellwig <hch@lst.de> Cc: Neil Brown <neilb@suse.de> Cc: "J. Bruce Fields" <bfields@fieldses.org> Cc: <linux-ext4@vger.kernel.org> Cc: Dave Kleikamp <shaggy@austin.ibm.com> Cc: Anton Altaparmakov <aia21@cantab.net> Cc: David Chinner <dgc@sgi.com> Cc: Timothy Shimmin <tes@sgi.com> Cc: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Cc: Hugh Dickins <hugh@veritas.com> Cc: Chris Mason <mason@suse.com> Cc: Jeff Mahoney <jeffm@suse.com> Cc: "Vladimir V. Saveliev" <vs@namesys.com> Cc: Steven Whitehouse <swhiteho@redhat.com> Cc: Mark Fasheh <mark.fasheh@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/exportfs.h')
-rw-r--r--include/linux/exportfs.h41
1 files changed, 0 insertions, 41 deletions
diff --git a/include/linux/exportfs.h b/include/linux/exportfs.h
index b44f6b6871c8..0b4a771b4903 100644
--- a/include/linux/exportfs.h
+++ b/include/linux/exportfs.h
@@ -54,8 +54,6 @@ struct fid {
54 * @get_name: find the name for a given inode in a given directory 54 * @get_name: find the name for a given inode in a given directory
55 * @get_parent: find the parent of a given directory 55 * @get_parent: find the parent of a given directory
56 * @get_dentry: find a dentry for the inode given a file handle sub-fragment 56 * @get_dentry: find a dentry for the inode given a file handle sub-fragment
57 * @find_exported_dentry:
58 * set by the exporting module to a standard helper function.
59 * 57 *
60 * Description: 58 * Description:
61 * The export_operations structure provides a means for nfsd to communicate 59 * The export_operations structure provides a means for nfsd to communicate
@@ -82,16 +80,6 @@ struct fid {
82 * looking for the next. As soon as an acceptable one is found, it should 80 * looking for the next. As soon as an acceptable one is found, it should
83 * be returned. 81 * be returned.
84 * 82 *
85 * decode_fh:
86 * @decode_fh is given a &struct super_block (@sb), a file handle fragment
87 * (@fh, @fh_len) and an acceptability testing function (@acceptable,
88 * @context). It should return a &struct dentry which refers to the same
89 * file that the file handle fragment refers to, and which passes the
90 * acceptability test. If it cannot, it should return a %NULL pointer if
91 * the file was found but no acceptable &dentries were available, or a
92 * %ERR_PTR error code indicating why it couldn't be found (e.g. %ENOENT or
93 * %ENOMEM).
94 *
95 * encode_fh: 83 * encode_fh:
96 * @encode_fh should store in the file handle fragment @fh (using at most 84 * @encode_fh should store in the file handle fragment @fh (using at most
97 * @max_len bytes) information that can be used by @decode_fh to recover the 85 * @max_len bytes) information that can be used by @decode_fh to recover the
@@ -129,30 +117,12 @@ struct fid {
129 * is also a directory. In the event that it cannot be found, or storage 117 * is also a directory. In the event that it cannot be found, or storage
130 * space cannot be allocated, a %ERR_PTR should be returned. 118 * space cannot be allocated, a %ERR_PTR should be returned.
131 * 119 *
132 * get_dentry:
133 * Given a &super_block (@sb) and a pointer to a file-system specific inode
134 * identifier, possibly an inode number, (@inump) get_dentry() should find
135 * the identified inode and return a dentry for that inode. Any suitable
136 * dentry can be returned including, if necessary, a new dentry created with
137 * d_alloc_root. The caller can then find any other extant dentrys by
138 * following the d_alias links. If a new dentry was created using
139 * d_alloc_root, DCACHE_NFSD_DISCONNECTED should be set, and the dentry
140 * should be d_rehash()ed.
141 *
142 * If the inode cannot be found, either a %NULL pointer or an %ERR_PTR code
143 * can be returned. The @inump will be whatever was passed to
144 * nfsd_find_fh_dentry() in either the @obj or @parent parameters.
145 *
146 * Locking rules: 120 * Locking rules:
147 * get_parent is called with child->d_inode->i_mutex down 121 * get_parent is called with child->d_inode->i_mutex down
148 * get_name is not (which is possibly inconsistent) 122 * get_name is not (which is possibly inconsistent)
149 */ 123 */
150 124
151struct export_operations { 125struct export_operations {
152 struct dentry *(*decode_fh)(struct super_block *sb, __u32 *fh,
153 int fh_len, int fh_type,
154 int (*acceptable)(void *context, struct dentry *de),
155 void *context);
156 int (*encode_fh)(struct dentry *de, __u32 *fh, int *max_len, 126 int (*encode_fh)(struct dentry *de, __u32 *fh, int *max_len,
157 int connectable); 127 int connectable);
158 struct dentry * (*fh_to_dentry)(struct super_block *sb, struct fid *fid, 128 struct dentry * (*fh_to_dentry)(struct super_block *sb, struct fid *fid,
@@ -162,19 +132,8 @@ struct export_operations {
162 int (*get_name)(struct dentry *parent, char *name, 132 int (*get_name)(struct dentry *parent, char *name,
163 struct dentry *child); 133 struct dentry *child);
164 struct dentry * (*get_parent)(struct dentry *child); 134 struct dentry * (*get_parent)(struct dentry *child);
165 struct dentry * (*get_dentry)(struct super_block *sb, void *inump);
166
167 /* This is set by the exporting module to a standard helper */
168 struct dentry * (*find_exported_dentry)(
169 struct super_block *sb, void *obj, void *parent,
170 int (*acceptable)(void *context, struct dentry *de),
171 void *context);
172}; 135};
173 136
174extern struct dentry *find_exported_dentry(struct super_block *sb, void *obj,
175 void *parent, int (*acceptable)(void *context, struct dentry *de),
176 void *context);
177
178extern int exportfs_encode_fh(struct dentry *dentry, struct fid *fid, 137extern int exportfs_encode_fh(struct dentry *dentry, struct fid *fid,
179 int *max_len, int connectable); 138 int *max_len, int connectable);
180extern struct dentry *exportfs_decode_fh(struct vfsmount *mnt, struct fid *fid, 139extern struct dentry *exportfs_decode_fh(struct vfsmount *mnt, struct fid *fid,