exportfs: make struct export_operations const
Christoph Hellwig [Sun, 21 Oct 2007 23:42:17 +0000 (16:42 -0700)]
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>

22 files changed:
fs/cifs/cifsfs.h
fs/cifs/export.c
fs/efs/super.c
fs/exportfs/expfs.c
fs/ext2/super.c
fs/ext3/super.c
fs/ext4/super.c
fs/fat/inode.c
fs/gfs2/ops_export.c
fs/gfs2/ops_fstype.h
fs/isofs/export.c
fs/isofs/isofs.h
fs/jfs/super.c
fs/ntfs/namei.c
fs/ntfs/ntfs.h
fs/ocfs2/export.c
fs/ocfs2/export.h
fs/reiserfs/super.c
fs/xfs/linux-2.6/xfs_export.c
fs/xfs/linux-2.6/xfs_super.h
include/linux/fs.h
mm/shmem.c

index 0a3ee5a..5574ba3 100644 (file)
@@ -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"
index d614b91..75949d6 100644 (file)
@@ -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 =
index d8ce21b..c79bc62 100644 (file)
@@ -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,
index e68f027..3524653 100644 (file)
@@ -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;
 
index 4a03d0c..154e25f 100644 (file)
@@ -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,
index 6a66f3d..de55da9 100644 (file)
@@ -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,
index 9f0d37a..8031dc0 100644 (file)
@@ -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,
index 14d75fc..920a576 100644 (file)
@@ -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,
index c291005..b9da623 100644 (file)
@@ -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,
index 407029b..da84905 100644 (file)
@@ -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__ */
index 511c351..29f9753 100644 (file)
@@ -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,
index a07e67b..f3213f9 100644 (file)
@@ -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;
index 81c3228..314bb4f 100644 (file)
@@ -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,
index 887c5e1..e1781c8 100644 (file)
@@ -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,
index d73f5a9..d6a340b 100644 (file)
@@ -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
index 3ad83e3..535bfa9 100644 (file)
@@ -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,
index e08bed9..41a7386 100644 (file)
@@ -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 */
index 708269f..5cd85fe 100644 (file)
@@ -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,
index 7178d61..15bd494 100644 (file)
@@ -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,
index c78c233..3efcf45 100644 (file)
@@ -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))
 
index 50078bb..b3ec4a4 100644 (file)
@@ -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;
index 9dd219e..404e53b 100644 (file)
@@ -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,