Re: [PATCH 4/8] fs: configfs: Replace CURRENT_TIME by current_fs_time()
From: Joel Becker
Date: Wed Feb 24 2016 - 04:02:35 EST
Acked-by: Joel Becker <jlbec@xxxxxxxxxxxx>
On Mon, Feb 22, 2016 at 07:17:50AM -0800, Deepa Dinamani wrote:
> CURRENT_TIME macro is not appropriate for filesystems as it
> doesn't use the right granularity for filesystem timestamps.
> Use current_fs_time() instead.
>
> Signed-off-by: Deepa Dinamani <deepa.kernel@xxxxxxxxx>
> Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
> Cc: stoph Hellwig <hch@xxxxxx>
> ---
> fs/configfs/inode.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/fs/configfs/inode.c b/fs/configfs/inode.c
> index cee087d..5f24ad3 100644
> --- a/fs/configfs/inode.c
> +++ b/fs/configfs/inode.c
> @@ -75,7 +75,8 @@ int configfs_setattr(struct dentry * dentry, struct iattr * iattr)
> sd_iattr->ia_mode = sd->s_mode;
> sd_iattr->ia_uid = GLOBAL_ROOT_UID;
> sd_iattr->ia_gid = GLOBAL_ROOT_GID;
> - sd_iattr->ia_atime = sd_iattr->ia_mtime = sd_iattr->ia_ctime = CURRENT_TIME;
> + sd_iattr->ia_atime = sd_iattr->ia_mtime =
> + sd_iattr->ia_ctime = current_fs_time(inode->i_sb);
> sd->s_iattr = sd_iattr;
> }
> /* attributes were changed atleast once in past */
> @@ -111,7 +112,8 @@ int configfs_setattr(struct dentry * dentry, struct iattr * iattr)
> static inline void set_default_inode_attr(struct inode * inode, umode_t mode)
> {
> inode->i_mode = mode;
> - inode->i_atime = inode->i_mtime = inode->i_ctime = CURRENT_TIME;
> + inode->i_atime = inode->i_mtime =
> + inode->i_ctime = current_fs_time(inode->i_sb);
> }
>
> static inline void set_inode_attr(struct inode * inode, struct iattr * iattr)
> @@ -195,7 +197,7 @@ int configfs_create(struct dentry * dentry, umode_t mode, void (*init)(struct in
> return -ENOMEM;
>
> p_inode = d_inode(dentry->d_parent);
> - p_inode->i_mtime = p_inode->i_ctime = CURRENT_TIME;
> + p_inode->i_mtime = p_inode->i_ctime = current_fs_time(p_inode->i_sb);
> configfs_set_inode_lock_class(sd, inode);
>
> init(inode);
> --
> 1.9.1
>
--