exportfs: make struct export_operations const
Now that nfsd has stopped writing to the find_exported_dentry member we an mark the export_operations const 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>
This commit is contained in:
Родитель
cfaea787c0
Коммит
3965516440
|
@ -103,7 +103,7 @@ extern int cifs_ioctl(struct inode *inode, struct file *filep,
|
|||
unsigned int command, unsigned long arg);
|
||||
|
||||
#ifdef CONFIG_CIFS_EXPERIMENTAL
|
||||
extern struct export_operations cifs_export_ops;
|
||||
extern const struct export_operations cifs_export_ops;
|
||||
#endif /* EXPERIMENTAL */
|
||||
|
||||
#define CIFS_VERSION "1.51"
|
||||
|
|
|
@ -53,7 +53,7 @@ static struct dentry *cifs_get_parent(struct dentry *dentry)
|
|||
return ERR_PTR(-EACCES);
|
||||
}
|
||||
|
||||
struct export_operations cifs_export_ops = {
|
||||
const struct export_operations cifs_export_ops = {
|
||||
.get_parent = cifs_get_parent,
|
||||
/* Following five export operations are unneeded so far and can default:
|
||||
.get_dentry =
|
||||
|
|
|
@ -113,7 +113,7 @@ static const struct super_operations efs_superblock_operations = {
|
|||
.remount_fs = efs_remount,
|
||||
};
|
||||
|
||||
static struct export_operations efs_export_ops = {
|
||||
static const struct export_operations efs_export_ops = {
|
||||
.fh_to_dentry = efs_fh_to_dentry,
|
||||
.fh_to_parent = efs_fh_to_parent,
|
||||
.get_parent = efs_get_parent,
|
||||
|
|
|
@ -16,7 +16,7 @@ static int get_name(struct dentry *dentry, char *name,
|
|||
static int exportfs_get_name(struct dentry *dir, char *name,
|
||||
struct dentry *child)
|
||||
{
|
||||
struct export_operations *nop = dir->d_sb->s_export_op;
|
||||
const struct export_operations *nop = dir->d_sb->s_export_op;
|
||||
|
||||
if (nop->get_name)
|
||||
return nop->get_name(dir, name, child);
|
||||
|
@ -333,7 +333,7 @@ static int export_encode_fh(struct dentry *dentry, struct fid *fid,
|
|||
int exportfs_encode_fh(struct dentry *dentry, struct fid *fid, int *max_len,
|
||||
int connectable)
|
||||
{
|
||||
struct export_operations *nop = dentry->d_sb->s_export_op;
|
||||
const struct export_operations *nop = dentry->d_sb->s_export_op;
|
||||
int error;
|
||||
|
||||
if (nop->encode_fh)
|
||||
|
@ -349,7 +349,7 @@ struct dentry *exportfs_decode_fh(struct vfsmount *mnt, struct fid *fid,
|
|||
int fh_len, int fileid_type,
|
||||
int (*acceptable)(void *, struct dentry *), void *context)
|
||||
{
|
||||
struct export_operations *nop = mnt->mnt_sb->s_export_op;
|
||||
const struct export_operations *nop = mnt->mnt_sb->s_export_op;
|
||||
struct dentry *result, *alias;
|
||||
int err;
|
||||
|
||||
|
|
|
@ -357,7 +357,7 @@ static struct dentry *ext2_fh_to_parent(struct super_block *sb, struct fid *fid,
|
|||
* systems, but can be improved upon.
|
||||
* Currently only get_parent is required.
|
||||
*/
|
||||
static struct export_operations ext2_export_ops = {
|
||||
static const struct export_operations ext2_export_ops = {
|
||||
.fh_to_dentry = ext2_fh_to_dentry,
|
||||
.fh_to_parent = ext2_fh_to_parent,
|
||||
.get_parent = ext2_get_parent,
|
||||
|
|
|
@ -741,7 +741,7 @@ static const struct super_operations ext3_sops = {
|
|||
#endif
|
||||
};
|
||||
|
||||
static struct export_operations ext3_export_ops = {
|
||||
static const struct export_operations ext3_export_ops = {
|
||||
.fh_to_dentry = ext3_fh_to_dentry,
|
||||
.fh_to_parent = ext3_fh_to_parent,
|
||||
.get_parent = ext3_get_parent,
|
||||
|
|
|
@ -796,7 +796,7 @@ static const struct super_operations ext4_sops = {
|
|||
#endif
|
||||
};
|
||||
|
||||
static struct export_operations ext4_export_ops = {
|
||||
static const struct export_operations ext4_export_ops = {
|
||||
.fh_to_dentry = ext4_fh_to_dentry,
|
||||
.fh_to_parent = ext4_fh_to_parent,
|
||||
.get_parent = ext4_get_parent,
|
||||
|
|
|
@ -774,7 +774,7 @@ out:
|
|||
return parent;
|
||||
}
|
||||
|
||||
static struct export_operations fat_export_ops = {
|
||||
static const struct export_operations fat_export_ops = {
|
||||
.encode_fh = fat_encode_fh,
|
||||
.fh_to_dentry = fat_fh_to_dentry,
|
||||
.get_parent = fat_get_parent,
|
||||
|
|
|
@ -294,7 +294,7 @@ static struct dentry *gfs2_fh_to_parent(struct super_block *sb, struct fid *fid,
|
|||
}
|
||||
}
|
||||
|
||||
struct export_operations gfs2_export_ops = {
|
||||
const struct export_operations gfs2_export_ops = {
|
||||
.encode_fh = gfs2_encode_fh,
|
||||
.fh_to_dentry = gfs2_fh_to_dentry,
|
||||
.fh_to_parent = gfs2_fh_to_parent,
|
||||
|
|
|
@ -14,6 +14,6 @@
|
|||
|
||||
extern struct file_system_type gfs2_fs_type;
|
||||
extern struct file_system_type gfs2meta_fs_type;
|
||||
extern struct export_operations gfs2_export_ops;
|
||||
extern const struct export_operations gfs2_export_ops;
|
||||
|
||||
#endif /* __OPS_FSTYPE_DOT_H__ */
|
||||
|
|
|
@ -207,7 +207,7 @@ static struct dentry *isofs_fh_to_parent(struct super_block *sb,
|
|||
fh_len > 4 ? ifid->parent_generation : 0);
|
||||
}
|
||||
|
||||
struct export_operations isofs_export_ops = {
|
||||
const struct export_operations isofs_export_ops = {
|
||||
.encode_fh = isofs_export_encode_fh,
|
||||
.fh_to_dentry = isofs_fh_to_dentry,
|
||||
.fh_to_parent = isofs_fh_to_parent,
|
||||
|
|
|
@ -178,4 +178,4 @@ isofs_normalize_block_and_offset(struct iso_directory_record* de,
|
|||
extern const struct inode_operations isofs_dir_inode_operations;
|
||||
extern const struct file_operations isofs_dir_operations;
|
||||
extern const struct address_space_operations isofs_symlink_aops;
|
||||
extern struct export_operations isofs_export_ops;
|
||||
extern const struct export_operations isofs_export_ops;
|
||||
|
|
|
@ -48,7 +48,7 @@ MODULE_LICENSE("GPL");
|
|||
static struct kmem_cache * jfs_inode_cachep;
|
||||
|
||||
static const struct super_operations jfs_super_operations;
|
||||
static struct export_operations jfs_export_operations;
|
||||
static const struct export_operations jfs_export_operations;
|
||||
static struct file_system_type jfs_fs_type;
|
||||
|
||||
#define MAX_COMMIT_THREADS 64
|
||||
|
@ -737,7 +737,7 @@ static const struct super_operations jfs_super_operations = {
|
|||
#endif
|
||||
};
|
||||
|
||||
static struct export_operations jfs_export_operations = {
|
||||
static const struct export_operations jfs_export_operations = {
|
||||
.fh_to_dentry = jfs_fh_to_dentry,
|
||||
.fh_to_parent = jfs_fh_to_parent,
|
||||
.get_parent = jfs_get_parent,
|
||||
|
|
|
@ -499,7 +499,7 @@ static struct dentry *ntfs_fh_to_parent(struct super_block *sb, struct fid *fid,
|
|||
* allowing the inode number 0 which is used in NTFS for the system file $MFT
|
||||
* and due to using iget() whereas NTFS needs ntfs_iget().
|
||||
*/
|
||||
struct export_operations ntfs_export_ops = {
|
||||
const struct export_operations ntfs_export_ops = {
|
||||
.get_parent = ntfs_get_parent, /* Find the parent of a given
|
||||
directory. */
|
||||
.fh_to_dentry = ntfs_fh_to_dentry,
|
||||
|
|
|
@ -69,7 +69,7 @@ extern const struct inode_operations ntfs_dir_inode_ops;
|
|||
extern const struct file_operations ntfs_empty_file_ops;
|
||||
extern const struct inode_operations ntfs_empty_inode_ops;
|
||||
|
||||
extern struct export_operations ntfs_export_ops;
|
||||
extern const struct export_operations ntfs_export_ops;
|
||||
|
||||
/**
|
||||
* NTFS_SB - return the ntfs volume given a vfs super block
|
||||
|
|
|
@ -222,7 +222,7 @@ static struct dentry *ocfs2_fh_to_parent(struct super_block *sb,
|
|||
return ocfs2_get_dentry(sb, &parent);
|
||||
}
|
||||
|
||||
struct export_operations ocfs2_export_ops = {
|
||||
const struct export_operations ocfs2_export_ops = {
|
||||
.encode_fh = ocfs2_encode_fh,
|
||||
.fh_to_dentry = ocfs2_fh_to_dentry,
|
||||
.fh_to_parent = ocfs2_fh_to_parent,
|
||||
|
|
|
@ -28,6 +28,6 @@
|
|||
|
||||
#include <linux/exportfs.h>
|
||||
|
||||
extern struct export_operations ocfs2_export_ops;
|
||||
extern const struct export_operations ocfs2_export_ops;
|
||||
|
||||
#endif /* OCFS2_EXPORT_H */
|
||||
|
|
|
@ -661,7 +661,7 @@ static struct quotactl_ops reiserfs_qctl_operations = {
|
|||
};
|
||||
#endif
|
||||
|
||||
static struct export_operations reiserfs_export_ops = {
|
||||
static const struct export_operations reiserfs_export_ops = {
|
||||
.encode_fh = reiserfs_encode_fh,
|
||||
.fh_to_dentry = reiserfs_fh_to_dentry,
|
||||
.fh_to_parent = reiserfs_fh_to_parent,
|
||||
|
|
|
@ -220,7 +220,7 @@ xfs_fs_get_parent(
|
|||
return parent;
|
||||
}
|
||||
|
||||
struct export_operations xfs_export_operations = {
|
||||
const struct export_operations xfs_export_operations = {
|
||||
.encode_fh = xfs_fs_encode_fh,
|
||||
.fh_to_dentry = xfs_fs_fh_to_dentry,
|
||||
.fh_to_parent = xfs_fs_fh_to_parent,
|
||||
|
|
|
@ -118,7 +118,7 @@ extern int xfs_blkdev_get(struct xfs_mount *, const char *,
|
|||
extern void xfs_blkdev_put(struct block_device *);
|
||||
extern void xfs_blkdev_issue_flush(struct xfs_buftarg *);
|
||||
|
||||
extern struct export_operations xfs_export_operations;
|
||||
extern const struct export_operations xfs_export_operations;
|
||||
|
||||
#define XFS_M(sb) ((struct xfs_mount *)((sb)->s_fs_info))
|
||||
|
||||
|
|
|
@ -987,7 +987,7 @@ struct super_block {
|
|||
const struct super_operations *s_op;
|
||||
struct dquot_operations *dq_op;
|
||||
struct quotactl_ops *s_qcop;
|
||||
struct export_operations *s_export_op;
|
||||
const struct export_operations *s_export_op;
|
||||
unsigned long s_flags;
|
||||
unsigned long s_magic;
|
||||
struct dentry *s_root;
|
||||
|
|
|
@ -2071,7 +2071,7 @@ static int shmem_encode_fh(struct dentry *dentry, __u32 *fh, int *len,
|
|||
return 1;
|
||||
}
|
||||
|
||||
static struct export_operations shmem_export_ops = {
|
||||
static const struct export_operations shmem_export_ops = {
|
||||
.get_parent = shmem_get_parent,
|
||||
.encode_fh = shmem_encode_fh,
|
||||
.fh_to_dentry = shmem_fh_to_dentry,
|
||||
|
|
Загрузка…
Ссылка в новой задаче