On Tue 01-09-26 14:14:32, 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

> ---
>  fs/quota/dquot.c         | 2 +-
>  include/linux/quotaops.h | 6 +++---
>  2 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c
> index 204afc5e984b..c5e9c4e24d68 100644
> --- a/fs/quota/dquot.c
> +++ b/fs/quota/dquot.c
> @@ -2079,7 +2079,7 @@ EXPORT_SYMBOL(__dquot_transfer);
>  /* Wrapper for transferring ownership of an inode for uid/gid only
>   * Called from FSXXX_setattr()
>   */
> -int dquot_transfer(struct mnt_idmap *idmap, struct inode *inode,
> +int dquot_transfer(const struct mnt_idmap *idmap, struct inode *inode,
>                  struct iattr *iattr)
>  {
>       struct dquot *transfer_to[MAXQUOTAS] = {};
> diff --git a/include/linux/quotaops.h b/include/linux/quotaops.h
> index f9c0f9d7c9d9..0c64ca674e77 100644
> --- a/include/linux/quotaops.h
> +++ b/include/linux/quotaops.h
> @@ -20,7 +20,7 @@ static inline struct quota_info *sb_dqopt(struct 
> super_block *sb)
>  }
>  
>  /* i_rwsem must being held */
> -static inline bool is_quota_modification(struct mnt_idmap *idmap,
> +static inline bool is_quota_modification(const struct mnt_idmap *idmap,
>                                        struct inode *inode, struct iattr *ia)
>  {
>       return ((ia->ia_valid & ATTR_SIZE) ||
> @@ -109,7 +109,7 @@ int dquot_set_dqblk(struct super_block *sb, struct kqid 
> id,
>               struct qc_dqblk *di);
>  
>  int __dquot_transfer(struct inode *inode, struct dquot **transfer_to);
> -int dquot_transfer(struct mnt_idmap *idmap, struct inode *inode,
> +int dquot_transfer(const struct mnt_idmap *idmap, struct inode *inode,
>                  struct iattr *iattr);
>  
>  static inline struct mem_dqinfo *sb_dqinfo(struct super_block *sb, int type)
> @@ -229,7 +229,7 @@ static inline void dquot_free_inode(struct inode *inode)
>  {
>  }
>  
> -static inline int dquot_transfer(struct mnt_idmap *idmap,
> +static inline int dquot_transfer(const struct mnt_idmap *idmap,
>                                struct inode *inode, struct iattr *iattr)
>  {
>       return 0;
> 
> -- 
> 2.53.0
> 
-- 
Jan Kara <[email protected]>
SUSE Labs, CR

Reply via email to