Message ID | 1456154274-30487-5-git-send-email-deepa.kernel@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Acked-by: Joel Becker <jlbec@evilplan.org> 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@gmail.com> > Cc: Joel Becker <jlbec@evilplan.org> > Cc: stoph Hellwig <hch@lst.de> > --- > 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 >
Thanks Deepa, I've added this to the configfs tree. -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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);
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@gmail.com> Cc: Joel Becker <jlbec@evilplan.org> Cc: stoph Hellwig <hch@lst.de> --- fs/configfs/inode.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)