aboutsummaryrefslogtreecommitdiffstats
path: root/fs/gfs2/xattr.c
diff options
context:
space:
mode:
authorDeepa Dinamani <deepa.kernel@gmail.com>2016-09-14 10:48:04 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2016-09-27 21:06:21 -0400
commit078cd8279e659989b103359bb22373cc79445bde (patch)
tree923e3fe84d232cc9ba31481852ea1faf46f56fb6 /fs/gfs2/xattr.c
parent2554c72edb81c97ae5307613dd0aee1ef8dd13ca (diff)
fs: Replace CURRENT_TIME with current_time() for inode timestamps
CURRENT_TIME macro is not appropriate for filesystems as it doesn't use the right granularity for filesystem timestamps. Use current_time() instead. CURRENT_TIME is also not y2038 safe. This is also in preparation for the patch that transitions vfs timestamps to use 64 bit time and hence make them y2038 safe. As part of the effort current_time() will be extended to do range checks. Hence, it is necessary for all file system timestamps to use current_time(). Also, current_time() will be transitioned along with vfs to be y2038 safe. Note that whenever a single call to current_time() is used to change timestamps in different inodes, it is because they share the same time granularity. Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com> Reviewed-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Felipe Balbi <balbi@kernel.org> Acked-by: Steven Whitehouse <swhiteho@redhat.com> Acked-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> Acked-by: David Sterba <dsterba@suse.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/gfs2/xattr.c')
-rw-r--r--fs/gfs2/xattr.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/gfs2/xattr.c b/fs/gfs2/xattr.c
index 3a2853504084..a4a577088d19 100644
--- a/fs/gfs2/xattr.c
+++ b/fs/gfs2/xattr.c
@@ -309,7 +309,7 @@ static int ea_dealloc_unstuffed(struct gfs2_inode *ip, struct buffer_head *bh,
309 309
310 error = gfs2_meta_inode_buffer(ip, &dibh); 310 error = gfs2_meta_inode_buffer(ip, &dibh);
311 if (!error) { 311 if (!error) {
312 ip->i_inode.i_ctime = CURRENT_TIME; 312 ip->i_inode.i_ctime = current_time(&ip->i_inode);
313 gfs2_trans_add_meta(ip->i_gl, dibh); 313 gfs2_trans_add_meta(ip->i_gl, dibh);
314 gfs2_dinode_out(ip, dibh->b_data); 314 gfs2_dinode_out(ip, dibh->b_data);
315 brelse(dibh); 315 brelse(dibh);
@@ -775,7 +775,7 @@ static int ea_alloc_skeleton(struct gfs2_inode *ip, struct gfs2_ea_request *er,
775 775
776 error = gfs2_meta_inode_buffer(ip, &dibh); 776 error = gfs2_meta_inode_buffer(ip, &dibh);
777 if (!error) { 777 if (!error) {
778 ip->i_inode.i_ctime = CURRENT_TIME; 778 ip->i_inode.i_ctime = current_time(&ip->i_inode);
779 gfs2_trans_add_meta(ip->i_gl, dibh); 779 gfs2_trans_add_meta(ip->i_gl, dibh);
780 gfs2_dinode_out(ip, dibh->b_data); 780 gfs2_dinode_out(ip, dibh->b_data);
781 brelse(dibh); 781 brelse(dibh);
@@ -910,7 +910,7 @@ static int ea_set_simple_noalloc(struct gfs2_inode *ip, struct buffer_head *bh,
910 error = gfs2_meta_inode_buffer(ip, &dibh); 910 error = gfs2_meta_inode_buffer(ip, &dibh);
911 if (error) 911 if (error)
912 goto out; 912 goto out;
913 ip->i_inode.i_ctime = CURRENT_TIME; 913 ip->i_inode.i_ctime = current_time(&ip->i_inode);
914 gfs2_trans_add_meta(ip->i_gl, dibh); 914 gfs2_trans_add_meta(ip->i_gl, dibh);
915 gfs2_dinode_out(ip, dibh->b_data); 915 gfs2_dinode_out(ip, dibh->b_data);
916 brelse(dibh); 916 brelse(dibh);
@@ -1133,7 +1133,7 @@ static int ea_remove_stuffed(struct gfs2_inode *ip, struct gfs2_ea_location *el)
1133 1133
1134 error = gfs2_meta_inode_buffer(ip, &dibh); 1134 error = gfs2_meta_inode_buffer(ip, &dibh);
1135 if (!error) { 1135 if (!error) {
1136 ip->i_inode.i_ctime = CURRENT_TIME; 1136 ip->i_inode.i_ctime = current_time(&ip->i_inode);
1137 gfs2_trans_add_meta(ip->i_gl, dibh); 1137 gfs2_trans_add_meta(ip->i_gl, dibh);
1138 gfs2_dinode_out(ip, dibh->b_data); 1138 gfs2_dinode_out(ip, dibh->b_data);
1139 brelse(dibh); 1139 brelse(dibh);