Commit ca5ccbf98d792d8727e893765cc2df479ba399f2
1 parent
1259845d3f
Exists in
master
and in
7 other branches
[XFS] Fix some build fallout from atime changes.
SGI-PV: 946679 SGI-Modid: xfs-linux-melb:xfs-kern:24899a Signed-off-by: Nathan Scott <nathans@sgi.com>
Showing 3 changed files with 21 additions and 5 deletions Side-by-side Diff
fs/xfs/linux-2.6/xfs_vnode.h
... | ... | @@ -566,6 +566,25 @@ |
566 | 566 | } |
567 | 567 | |
568 | 568 | /* |
569 | + * Extracting atime values in various formats | |
570 | + */ | |
571 | +static inline void vn_atime_to_bstime(struct vnode *vp, xfs_bstime_t *bs_atime) | |
572 | +{ | |
573 | + bs_atime->tv_sec = vp->v_inode.i_atime.tv_sec; | |
574 | + bs_atime->tv_nsec = vp->v_inode.i_atime.tv_nsec; | |
575 | +} | |
576 | + | |
577 | +static inline void vn_atime_to_timespec(struct vnode *vp, struct timespec *ts) | |
578 | +{ | |
579 | + *ts = vp->v_inode.i_atime; | |
580 | +} | |
581 | + | |
582 | +static inline void vn_atime_to_time_t(struct vnode *vp, time_t *tt) | |
583 | +{ | |
584 | + *tt = vp->v_inode.i_atime.tv_sec; | |
585 | +} | |
586 | + | |
587 | +/* | |
569 | 588 | * Some useful predicates. |
570 | 589 | */ |
571 | 590 | #define VN_MAPPED(vp) mapping_mapped(LINVFS_GET_IP(vp)->i_mapping) |
fs/xfs/xfs_itable.c
... | ... | @@ -86,9 +86,7 @@ |
86 | 86 | buf->bs_uid = dic->di_uid; |
87 | 87 | buf->bs_gid = dic->di_gid; |
88 | 88 | buf->bs_size = dic->di_size; |
89 | - /* atime is only kept uptodate in the Linux inode */ | |
90 | - buf->bs_atime.tv_sec = vp->v_inode.i_atime.tv_sec; | |
91 | - buf->bs_atime.tv_nsec = vp->v_inode.i_atime.tv_nsec; | |
89 | + vn_atime_to_bstime(vp, &buf->bs_atime); | |
92 | 90 | buf->bs_mtime.tv_sec = dic->di_mtime.t_sec; |
93 | 91 | buf->bs_mtime.tv_nsec = dic->di_mtime.t_nsec; |
94 | 92 | buf->bs_ctime.tv_sec = dic->di_ctime.t_sec; |
fs/xfs/xfs_vnodeops.c
... | ... | @@ -182,8 +182,7 @@ |
182 | 182 | break; |
183 | 183 | } |
184 | 184 | |
185 | - /* atime is only kept uptodate in the Linux inode */ | |
186 | - vap->va_atime = vp->v_inode.i_atime; | |
185 | + vn_atime_to_timespec(vp, &vap->va_atime); | |
187 | 186 | vap->va_mtime.tv_sec = ip->i_d.di_mtime.t_sec; |
188 | 187 | vap->va_mtime.tv_nsec = ip->i_d.di_mtime.t_nsec; |
189 | 188 | vap->va_ctime.tv_sec = ip->i_d.di_ctime.t_sec; |