On Tue 01-09-26 14:14:39, Christian Brauner wrote:
> Convert to const struct mnt_idmap.
> 
> A mount's idmapping is immutable. The only thing that is allowed to be
> modified afterwards is the reference count and that is hidden behind
> mnt_idmap_get() and mnt_idmap_put(). Everything else only ever reads
> from the idmapping. This is the same model that struct cred uses and the
> idmapping is also rather sensitive.
> 
> So make the idmap argument const wherever we can. The conversion is done
> from the bottom up so callers can continue to pass a non-const pointer
> to a const parameter until the conversion is finished.
> 
> No functional changes.
> 
> Signed-off-by: Christian Brauner (Amutable) <[email protected]>

Looks good. Feel free to add:

Reviewed-by: Jan Kara <[email protected]>

                                                                Honza

> ---
>  Documentation/filesystems/locking.rst | 2 +-
>  Documentation/filesystems/vfs.rst     | 2 +-
>  fs/btrfs/ioctl.c                      | 2 +-
>  fs/btrfs/ioctl.h                      | 2 +-
>  fs/ecryptfs/inode.c                   | 2 +-
>  fs/efivarfs/inode.c                   | 2 +-
>  fs/ext2/ext2.h                        | 2 +-
>  fs/ext2/ioctl.c                       | 2 +-
>  fs/ext4/ext4.h                        | 2 +-
>  fs/ext4/ioctl.c                       | 2 +-
>  fs/f2fs/f2fs.h                        | 2 +-
>  fs/f2fs/file.c                        | 2 +-
>  fs/file_attr.c                        | 2 +-
>  fs/fuse/fuse_i.h                      | 2 +-
>  fs/fuse/ioctl.c                       | 2 +-
>  fs/gfs2/file.c                        | 2 +-
>  fs/gfs2/inode.h                       | 2 +-
>  fs/hfsplus/hfsplus_fs.h               | 2 +-
>  fs/hfsplus/inode.c                    | 2 +-
>  fs/jfs/ioctl.c                        | 2 +-
>  fs/jfs/jfs_inode.h                    | 2 +-
>  fs/nilfs2/ioctl.c                     | 2 +-
>  fs/nilfs2/nilfs.h                     | 2 +-
>  fs/ntfs3/file.c                       | 2 +-
>  fs/ntfs3/ntfs_fs.h                    | 2 +-
>  fs/ocfs2/ioctl.c                      | 2 +-
>  fs/ocfs2/ioctl.h                      | 2 +-
>  fs/orangefs/inode.c                   | 2 +-
>  fs/overlayfs/inode.c                  | 2 +-
>  fs/overlayfs/overlayfs.h              | 2 +-
>  fs/ubifs/ioctl.c                      | 2 +-
>  fs/ubifs/ubifs.h                      | 2 +-
>  fs/xfs/xfs_ioctl.c                    | 2 +-
>  fs/xfs/xfs_ioctl.h                    | 2 +-
>  include/linux/fileattr.h              | 2 +-
>  include/linux/fs.h                    | 2 +-
>  mm/shmem.c                            | 2 +-
>  37 files changed, 37 insertions(+), 37 deletions(-)
> 
> diff --git a/Documentation/filesystems/locking.rst 
> b/Documentation/filesystems/locking.rst
> index 2a91bc9c15f5..b95cd4992896 100644
> --- a/Documentation/filesystems/locking.rst
> +++ b/Documentation/filesystems/locking.rst
> @@ -88,7 +88,7 @@ prototypes::
>                               umode_t create_mode);
>       int (*tmpfile) (struct mnt_idmap *, struct inode *,
>                       struct file *, umode_t);
> -     int (*fileattr_set)(struct mnt_idmap *idmap,
> +     int (*fileattr_set)(const struct mnt_idmap *idmap,
>                           struct dentry *dentry, struct file_kattr *fa);
>       int (*fileattr_get)(struct dentry *dentry, struct file_kattr *fa);
>       struct posix_acl * (*get_acl)(struct mnt_idmap *, struct dentry *, int);
> diff --git a/Documentation/filesystems/vfs.rst 
> b/Documentation/filesystems/vfs.rst
> index b7e476f70185..c43bad400c30 100644
> --- a/Documentation/filesystems/vfs.rst
> +++ b/Documentation/filesystems/vfs.rst
> @@ -441,7 +441,7 @@ As of kernel 2.6.22, the following members are defined:
>               int (*tmpfile) (struct mnt_idmap *, struct inode *, struct file 
> *, umode_t);
>               struct posix_acl * (*get_acl)(struct mnt_idmap *, struct dentry 
> *, int);
>               int (*set_acl)(struct mnt_idmap *, struct dentry *, struct 
> posix_acl *, int);
> -             int (*fileattr_set)(struct mnt_idmap *idmap,
> +             int (*fileattr_set)(const struct mnt_idmap *idmap,
>                                   struct dentry *dentry, struct file_kattr 
> *fa);
>               int (*fileattr_get)(struct dentry *dentry, struct file_kattr 
> *fa);
>               struct offset_ctx *(*get_offset_ctx)(struct inode *inode);
> diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
> index 9d6302547b12..94c98801800f 100644
> --- a/fs/btrfs/ioctl.c
> +++ b/fs/btrfs/ioctl.c
> @@ -278,7 +278,7 @@ int btrfs_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>       return 0;
>  }
>  
> -int btrfs_fileattr_set(struct mnt_idmap *idmap,
> +int btrfs_fileattr_set(const struct mnt_idmap *idmap,
>                      struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct btrfs_inode *inode = BTRFS_I(d_inode(dentry));
> diff --git a/fs/btrfs/ioctl.h b/fs/btrfs/ioctl.h
> index ccf6bed9cc24..55f86aeb3500 100644
> --- a/fs/btrfs/ioctl.h
> +++ b/fs/btrfs/ioctl.h
> @@ -17,7 +17,7 @@ struct btrfs_ioctl_balance_args;
>  long btrfs_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
>  long btrfs_compat_ioctl(struct file *file, unsigned int cmd, unsigned long 
> arg);
>  int btrfs_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -int btrfs_fileattr_set(struct mnt_idmap *idmap,
> +int btrfs_fileattr_set(const struct mnt_idmap *idmap,
>                      struct dentry *dentry, struct file_kattr *fa);
>  int btrfs_ioctl_get_supported_features(void __user *arg);
>  void btrfs_sync_inode_flags_to_i_flags(struct btrfs_inode *inode);
> diff --git a/fs/ecryptfs/inode.c b/fs/ecryptfs/inode.c
> index 691b3a24b60a..b9c32e8f855a 100644
> --- a/fs/ecryptfs/inode.c
> +++ b/fs/ecryptfs/inode.c
> @@ -1078,7 +1078,7 @@ static int ecryptfs_fileattr_get(struct dentry *dentry, 
> struct file_kattr *fa)
>       return vfs_fileattr_get(ecryptfs_dentry_to_lower(dentry), fa);
>  }
>  
> -static int ecryptfs_fileattr_set(struct mnt_idmap *idmap,
> +static int ecryptfs_fileattr_set(const struct mnt_idmap *idmap,
>                                struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct dentry *lower_dentry = ecryptfs_dentry_to_lower(dentry);
> diff --git a/fs/efivarfs/inode.c b/fs/efivarfs/inode.c
> index f0d009555fc6..f7dcd72e4a07 100644
> --- a/fs/efivarfs/inode.c
> +++ b/fs/efivarfs/inode.c
> @@ -150,7 +150,7 @@ efivarfs_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>  }
>  
>  static int
> -efivarfs_fileattr_set(struct mnt_idmap *idmap,
> +efivarfs_fileattr_set(const struct mnt_idmap *idmap,
>                     struct dentry *dentry, struct file_kattr *fa)
>  {
>       unsigned int i_flags = 0;
> diff --git a/fs/ext2/ext2.h b/fs/ext2/ext2.h
> index 5642451bf191..702cb7aa1afd 100644
> --- a/fs/ext2/ext2.h
> +++ b/fs/ext2/ext2.h
> @@ -748,7 +748,7 @@ extern int ext2_fiemap(struct inode *inode, struct 
> fiemap_extent_info *fieinfo,
>  
>  /* ioctl.c */
>  extern int ext2_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -extern int ext2_fileattr_set(struct mnt_idmap *idmap,
> +extern int ext2_fileattr_set(const struct mnt_idmap *idmap,
>                            struct dentry *dentry, struct file_kattr *fa);
>  extern long ext2_ioctl(struct file *, unsigned int, unsigned long);
>  extern long ext2_compat_ioctl(struct file *, unsigned int, unsigned long);
> diff --git a/fs/ext2/ioctl.c b/fs/ext2/ioctl.c
> index c3fea55b8efa..f2218455fa47 100644
> --- a/fs/ext2/ioctl.c
> +++ b/fs/ext2/ioctl.c
> @@ -27,7 +27,7 @@ int ext2_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>       return 0;
>  }
>  
> -int ext2_fileattr_set(struct mnt_idmap *idmap,
> +int ext2_fileattr_set(const struct mnt_idmap *idmap,
>                     struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
> index aef86b1d10fa..2c9a845ed0f8 100644
> --- a/fs/ext4/ext4.h
> +++ b/fs/ext4/ext4.h
> @@ -3246,7 +3246,7 @@ extern int ext4_ind_remove_space(handle_t *handle, 
> struct inode *inode,
>  /* ioctl.c */
>  extern long ext4_ioctl(struct file *, unsigned int, unsigned long);
>  extern long ext4_compat_ioctl(struct file *, unsigned int, unsigned long);
> -int ext4_fileattr_set(struct mnt_idmap *idmap,
> +int ext4_fileattr_set(const struct mnt_idmap *idmap,
>                     struct dentry *dentry, struct file_kattr *fa);
>  int ext4_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
>  extern void ext4_reset_inode_seed(struct inode *inode);
> diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c
> index 6de77da4203c..2719f20493c8 100644
> --- a/fs/ext4/ioctl.c
> +++ b/fs/ext4/ioctl.c
> @@ -1008,7 +1008,7 @@ int ext4_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>       return 0;
>  }
>  
> -int ext4_fileattr_set(struct mnt_idmap *idmap,
> +int ext4_fileattr_set(const struct mnt_idmap *idmap,
>                     struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
> index eefc886e3ffc..245df8563256 100644
> --- a/fs/f2fs/f2fs.h
> +++ b/fs/f2fs/f2fs.h
> @@ -3858,7 +3858,7 @@ int f2fs_do_shutdown(struct f2fs_sb_info *sbi, unsigned 
> int flag,
>                                               bool readonly, bool need_lock);
>  int f2fs_precache_extents(struct inode *inode);
>  int f2fs_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -int f2fs_fileattr_set(struct mnt_idmap *idmap,
> +int f2fs_fileattr_set(const struct mnt_idmap *idmap,
>                     struct dentry *dentry, struct file_kattr *fa);
>  long f2fs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg);
>  long f2fs_compat_ioctl(struct file *file, unsigned int cmd, unsigned long 
> arg);
> diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
> index 03bb3a9a449f..d0cc2ca1397a 100644
> --- a/fs/f2fs/file.c
> +++ b/fs/f2fs/file.c
> @@ -3580,7 +3580,7 @@ int f2fs_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>       return 0;
>  }
>  
> -int f2fs_fileattr_set(struct mnt_idmap *idmap,
> +int f2fs_fileattr_set(const struct mnt_idmap *idmap,
>                     struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/file_attr.c b/fs/file_attr.c
> index bfb00d256dd5..5393c4dfa4a8 100644
> --- a/fs/file_attr.c
> +++ b/fs/file_attr.c
> @@ -265,7 +265,7 @@ static int fileattr_set_prepare(struct inode *inode,
>   *
>   * Return: 0 on success, or a negative error on failure.
>   */
> -int vfs_fileattr_set(struct mnt_idmap *idmap, struct dentry *dentry,
> +int vfs_fileattr_set(const struct mnt_idmap *idmap, struct dentry *dentry,
>                    struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/fuse/fuse_i.h b/fs/fuse/fuse_i.h
> index 9ea346ea2e01..6ca56757869c 100644
> --- a/fs/fuse/fuse_i.h
> +++ b/fs/fuse/fuse_i.h
> @@ -1238,7 +1238,7 @@ long fuse_file_ioctl(struct file *file, unsigned int 
> cmd, unsigned long arg);
>  long fuse_file_compat_ioctl(struct file *file, unsigned int cmd,
>                           unsigned long arg);
>  int fuse_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -int fuse_fileattr_set(struct mnt_idmap *idmap,
> +int fuse_fileattr_set(const struct mnt_idmap *idmap,
>                     struct dentry *dentry, struct file_kattr *fa);
>  
>  /* iomode.c */
> diff --git a/fs/fuse/ioctl.c b/fs/fuse/ioctl.c
> index 3614ea603913..3ee45b2e148f 100644
> --- a/fs/fuse/ioctl.c
> +++ b/fs/fuse/ioctl.c
> @@ -540,7 +540,7 @@ int fuse_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>       return err;
>  }
>  
> -int fuse_fileattr_set(struct mnt_idmap *idmap,
> +int fuse_fileattr_set(const struct mnt_idmap *idmap,
>                     struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
> index b8c10de113ba..9487625a4166 100644
> --- a/fs/gfs2/file.c
> +++ b/fs/gfs2/file.c
> @@ -275,7 +275,7 @@ static int do_gfs2_set_flags(struct inode *inode, u32 
> reqflags, u32 mask)
>       return error;
>  }
>  
> -int gfs2_fileattr_set(struct mnt_idmap *idmap,
> +int gfs2_fileattr_set(const struct mnt_idmap *idmap,
>                     struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/gfs2/inode.h b/fs/gfs2/inode.h
> index 373473eb091c..99196d3114e4 100644
> --- a/fs/gfs2/inode.h
> +++ b/fs/gfs2/inode.h
> @@ -109,7 +109,7 @@ extern const struct file_operations gfs2_file_fops_nolock;
>  extern const struct file_operations gfs2_dir_fops_nolock;
>  
>  int gfs2_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -int gfs2_fileattr_set(struct mnt_idmap *idmap,
> +int gfs2_fileattr_set(const struct mnt_idmap *idmap,
>                     struct dentry *dentry, struct file_kattr *fa);
>  void gfs2_set_inode_flags(struct inode *inode);
>  
> diff --git a/fs/hfsplus/hfsplus_fs.h b/fs/hfsplus/hfsplus_fs.h
> index 1e5b58e6a13f..86fc1c1cdfd6 100644
> --- a/fs/hfsplus/hfsplus_fs.h
> +++ b/fs/hfsplus/hfsplus_fs.h
> @@ -465,7 +465,7 @@ int hfsplus_getattr(struct mnt_idmap *idmap, const struct 
> path *path,
>  int hfsplus_file_fsync(struct file *file, loff_t start, loff_t end,
>                      int datasync);
>  int hfsplus_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -int hfsplus_fileattr_set(struct mnt_idmap *idmap,
> +int hfsplus_fileattr_set(const struct mnt_idmap *idmap,
>                        struct dentry *dentry, struct file_kattr *fa);
>  
>  /* ioctl.c */
> diff --git a/fs/hfsplus/inode.c b/fs/hfsplus/inode.c
> index 2ce6de574fa6..9821662bfc1d 100644
> --- a/fs/hfsplus/inode.c
> +++ b/fs/hfsplus/inode.c
> @@ -797,7 +797,7 @@ int hfsplus_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>       return 0;
>  }
>  
> -int hfsplus_fileattr_set(struct mnt_idmap *idmap,
> +int hfsplus_fileattr_set(const struct mnt_idmap *idmap,
>                        struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/jfs/ioctl.c b/fs/jfs/ioctl.c
> index 563f148be8af..27d39cddaca6 100644
> --- a/fs/jfs/ioctl.c
> +++ b/fs/jfs/ioctl.c
> @@ -70,7 +70,7 @@ int jfs_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>       return 0;
>  }
>  
> -int jfs_fileattr_set(struct mnt_idmap *idmap,
> +int jfs_fileattr_set(const struct mnt_idmap *idmap,
>                    struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/jfs/jfs_inode.h b/fs/jfs/jfs_inode.h
> index 2c6c81c8cb9f..88cfc3886282 100644
> --- a/fs/jfs/jfs_inode.h
> +++ b/fs/jfs/jfs_inode.h
> @@ -10,7 +10,7 @@ struct fid;
>  extern struct inode *ialloc(struct inode *, umode_t);
>  extern int jfs_fsync(struct file *, loff_t, loff_t, int);
>  extern int jfs_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -extern int jfs_fileattr_set(struct mnt_idmap *idmap,
> +extern int jfs_fileattr_set(const struct mnt_idmap *idmap,
>                           struct dentry *dentry, struct file_kattr *fa);
>  extern long jfs_ioctl(struct file *, unsigned int, unsigned long);
>  extern struct inode *jfs_iget(struct super_block *, unsigned long);
> diff --git a/fs/nilfs2/ioctl.c b/fs/nilfs2/ioctl.c
> index 01a04080ef70..f56a79767c69 100644
> --- a/fs/nilfs2/ioctl.c
> +++ b/fs/nilfs2/ioctl.c
> @@ -135,7 +135,7 @@ int nilfs_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>   *
>   * Return: 0 on success, or a negative error code on failure.
>   */
> -int nilfs_fileattr_set(struct mnt_idmap *idmap,
> +int nilfs_fileattr_set(const struct mnt_idmap *idmap,
>                      struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/nilfs2/nilfs.h b/fs/nilfs2/nilfs.h
> index 0eaa191f70b8..829df7be11fe 100644
> --- a/fs/nilfs2/nilfs.h
> +++ b/fs/nilfs2/nilfs.h
> @@ -270,7 +270,7 @@ extern int nilfs_sync_file(struct file *, loff_t, loff_t, 
> int);
>  
>  /* ioctl.c */
>  int nilfs_fileattr_get(struct dentry *dentry, struct file_kattr *m);
> -int nilfs_fileattr_set(struct mnt_idmap *idmap,
> +int nilfs_fileattr_set(const struct mnt_idmap *idmap,
>                      struct dentry *dentry, struct file_kattr *fa);
>  long nilfs_ioctl(struct file *, unsigned int, unsigned long);
>  long nilfs_compat_ioctl(struct file *file, unsigned int cmd, unsigned long 
> arg);
> diff --git a/fs/ntfs3/file.c b/fs/ntfs3/file.c
> index 2abf334bfa0c..f7baa202dc28 100644
> --- a/fs/ntfs3/file.c
> +++ b/fs/ntfs3/file.c
> @@ -129,7 +129,7 @@ int ntfs_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>  /*
>   * ntfs_fileattr_set - inode_operations::fileattr_set
>   */
> -int ntfs_fileattr_set(struct mnt_idmap *idmap, struct dentry *dentry,
> +int ntfs_fileattr_set(const struct mnt_idmap *idmap, struct dentry *dentry,
>                     struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/ntfs3/ntfs_fs.h b/fs/ntfs3/ntfs_fs.h
> index a2b74f41048f..e494bed87679 100644
> --- a/fs/ntfs3/ntfs_fs.h
> +++ b/fs/ntfs3/ntfs_fs.h
> @@ -551,7 +551,7 @@ extern const struct file_operations ntfs_dir_operations;
>  
>  /* Globals from file.c */
>  int ntfs_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -int ntfs_fileattr_set(struct mnt_idmap *idmap, struct dentry *dentry,
> +int ntfs_fileattr_set(const struct mnt_idmap *idmap, struct dentry *dentry,
>                     struct file_kattr *fa);
>  int ntfs_getattr(struct mnt_idmap *idmap, const struct path *path,
>                struct kstat *stat, u32 request_mask, u32 flags);
> diff --git a/fs/ocfs2/ioctl.c b/fs/ocfs2/ioctl.c
> index cbe59d231666..36c7c9ac8b5d 100644
> --- a/fs/ocfs2/ioctl.c
> +++ b/fs/ocfs2/ioctl.c
> @@ -82,7 +82,7 @@ int ocfs2_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>       return status;
>  }
>  
> -int ocfs2_fileattr_set(struct mnt_idmap *idmap,
> +int ocfs2_fileattr_set(const struct mnt_idmap *idmap,
>                      struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/ocfs2/ioctl.h b/fs/ocfs2/ioctl.h
> index 4a1c2313b429..b1cb529fc5f9 100644
> --- a/fs/ocfs2/ioctl.h
> +++ b/fs/ocfs2/ioctl.h
> @@ -12,7 +12,7 @@
>  #define OCFS2_IOCTL_PROTO_H
>  
>  int ocfs2_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -int ocfs2_fileattr_set(struct mnt_idmap *idmap,
> +int ocfs2_fileattr_set(const struct mnt_idmap *idmap,
>                      struct dentry *dentry, struct file_kattr *fa);
>  long ocfs2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg);
>  long ocfs2_compat_ioctl(struct file *file, unsigned cmd, unsigned long arg);
> diff --git a/fs/orangefs/inode.c b/fs/orangefs/inode.c
> index 8e6eeec501bc..536d5e842c55 100644
> --- a/fs/orangefs/inode.c
> +++ b/fs/orangefs/inode.c
> @@ -934,7 +934,7 @@ static int orangefs_fileattr_get(struct dentry *dentry, 
> struct file_kattr *fa)
>       return 0;
>  }
>  
> -static int orangefs_fileattr_set(struct mnt_idmap *idmap,
> +static int orangefs_fileattr_set(const struct mnt_idmap *idmap,
>                                struct dentry *dentry, struct file_kattr *fa)
>  {
>       u64 val = 0;
> diff --git a/fs/overlayfs/inode.c b/fs/overlayfs/inode.c
> index 1166381f1852..5f4e8b6d9722 100644
> --- a/fs/overlayfs/inode.c
> +++ b/fs/overlayfs/inode.c
> @@ -650,7 +650,7 @@ int ovl_real_fileattr_set(const struct path *realpath, 
> struct file_kattr *fa)
>       return vfs_fileattr_set(mnt_idmap(realpath->mnt), realpath->dentry, fa);
>  }
>  
> -int ovl_fileattr_set(struct mnt_idmap *idmap,
> +int ovl_fileattr_set(const struct mnt_idmap *idmap,
>                    struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/overlayfs/overlayfs.h b/fs/overlayfs/overlayfs.h
> index 513ba93c7d1b..46a5cf5dae4c 100644
> --- a/fs/overlayfs/overlayfs.h
> +++ b/fs/overlayfs/overlayfs.h
> @@ -914,7 +914,7 @@ extern const struct file_operations ovl_file_operations;
>  int ovl_real_fileattr_get(const struct path *realpath, struct file_kattr 
> *fa);
>  int ovl_real_fileattr_set(const struct path *realpath, struct file_kattr 
> *fa);
>  int ovl_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -int ovl_fileattr_set(struct mnt_idmap *idmap,
> +int ovl_fileattr_set(const struct mnt_idmap *idmap,
>                    struct dentry *dentry, struct file_kattr *fa);
>  struct ovl_file;
>  struct ovl_file *ovl_file_alloc(struct file *realfile);
> diff --git a/fs/ubifs/ioctl.c b/fs/ubifs/ioctl.c
> index 79536b2e3d7a..5c34f895bd4e 100644
> --- a/fs/ubifs/ioctl.c
> +++ b/fs/ubifs/ioctl.c
> @@ -144,7 +144,7 @@ int ubifs_fileattr_get(struct dentry *dentry, struct 
> file_kattr *fa)
>       return 0;
>  }
>  
> -int ubifs_fileattr_set(struct mnt_idmap *idmap,
> +int ubifs_fileattr_set(const struct mnt_idmap *idmap,
>                      struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> diff --git a/fs/ubifs/ubifs.h b/fs/ubifs/ubifs.h
> index 00db0d19a85e..af0ef3583aeb 100644
> --- a/fs/ubifs/ubifs.h
> +++ b/fs/ubifs/ubifs.h
> @@ -2083,7 +2083,7 @@ void ubifs_destroy_size_tree(struct ubifs_info *c);
>  
>  /* ioctl.c */
>  int ubifs_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -int ubifs_fileattr_set(struct mnt_idmap *idmap,
> +int ubifs_fileattr_set(const struct mnt_idmap *idmap,
>                      struct dentry *dentry, struct file_kattr *fa);
>  long ubifs_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
>  void ubifs_set_inode_flags(struct inode *inode);
> diff --git a/fs/xfs/xfs_ioctl.c b/fs/xfs/xfs_ioctl.c
> index 1b53701bebea..0df67f0d573c 100644
> --- a/fs/xfs/xfs_ioctl.c
> +++ b/fs/xfs/xfs_ioctl.c
> @@ -748,7 +748,7 @@ xfs_ioctl_setattr_check_projid(
>  
>  int
>  xfs_fileattr_set(
> -     struct mnt_idmap        *idmap,
> +     const struct mnt_idmap  *idmap,
>       struct dentry           *dentry,
>       struct file_kattr       *fa)
>  {
> diff --git a/fs/xfs/xfs_ioctl.h b/fs/xfs/xfs_ioctl.h
> index f5ed5cf9d3df..70c26cb05eb6 100644
> --- a/fs/xfs/xfs_ioctl.h
> +++ b/fs/xfs/xfs_ioctl.h
> @@ -21,7 +21,7 @@ xfs_fileattr_get(
>  
>  extern int
>  xfs_fileattr_set(
> -     struct mnt_idmap        *idmap,
> +     const struct mnt_idmap  *idmap,
>       struct dentry           *dentry,
>       struct file_kattr       *fa);
>  
> diff --git a/include/linux/fileattr.h b/include/linux/fileattr.h
> index 58044b598016..09e32b84e02a 100644
> --- a/include/linux/fileattr.h
> +++ b/include/linux/fileattr.h
> @@ -74,7 +74,7 @@ static inline bool fileattr_has_fsx(const struct file_kattr 
> *fa)
>  }
>  
>  int vfs_fileattr_get(struct dentry *dentry, struct file_kattr *fa);
> -int vfs_fileattr_set(struct mnt_idmap *idmap, struct dentry *dentry,
> +int vfs_fileattr_set(const struct mnt_idmap *idmap, struct dentry *dentry,
>                    struct file_kattr *fa);
>  int ioctl_getflags(struct file *file, unsigned int __user *argp);
>  int ioctl_setflags(struct file *file, unsigned int __user *argp);
> diff --git a/include/linux/fs.h b/include/linux/fs.h
> index 08166900931a..764ef2d97a5d 100644
> --- a/include/linux/fs.h
> +++ b/include/linux/fs.h
> @@ -2030,7 +2030,7 @@ struct inode_operations {
>                                    int);
>       int (*set_acl)(struct mnt_idmap *, struct dentry *,
>                      struct posix_acl *, int);
> -     int (*fileattr_set)(struct mnt_idmap *idmap,
> +     int (*fileattr_set)(const struct mnt_idmap *idmap,
>                           struct dentry *dentry, struct file_kattr *fa);
>       int (*fileattr_get)(struct dentry *dentry, struct file_kattr *fa);
>       struct offset_ctx *(*get_offset_ctx)(struct inode *inode);
> diff --git a/mm/shmem.c b/mm/shmem.c
> index ed633b3bc38d..097699ea2762 100644
> --- a/mm/shmem.c
> +++ b/mm/shmem.c
> @@ -4159,7 +4159,7 @@ static int shmem_fileattr_get(struct dentry *dentry, 
> struct file_kattr *fa)
>       return 0;
>  }
>  
> -static int shmem_fileattr_set(struct mnt_idmap *idmap,
> +static int shmem_fileattr_set(const struct mnt_idmap *idmap,
>                             struct dentry *dentry, struct file_kattr *fa)
>  {
>       struct inode *inode = d_inode(dentry);
> 
> -- 
> 2.53.0
> 
-- 
Jan Kara <[email protected]>
SUSE Labs, CR

Reply via email to