summaryrefslogtreecommitdiff
path: root/fs/nfsd
diff options
context:
space:
mode:
authorJ. Bruce Fields <bfields@redhat.com>2020-11-30 17:46:16 -0500
committerChuck Lever <chuck.lever@oracle.com>2020-12-09 09:39:37 -0500
commit4b03d99794eeed27650597a886247c6427ce1055 (patch)
treef6f832964583f8ef0c8f2b41b143914a4dcc1d13 /fs/nfsd
parentb2140338d8dca827ad9e83f3e026e9d51748b265 (diff)
nfsd: minor nfsd4_change_attribute cleanup
Minor cleanup, no change in behavior. Also pull out a common helper that'll be useful elsewhere. Signed-off-by: J. Bruce Fields <bfields@redhat.com> Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Diffstat (limited to 'fs/nfsd')
-rw-r--r--fs/nfsd/nfsfh.h13
1 files changed, 5 insertions, 8 deletions
diff --git a/fs/nfsd/nfsfh.h b/fs/nfsd/nfsfh.h
index 39d764b129fa..45bd776290d5 100644
--- a/fs/nfsd/nfsfh.h
+++ b/fs/nfsd/nfsfh.h
@@ -259,19 +259,16 @@ fh_clear_wcc(struct svc_fh *fhp)
static inline u64 nfsd4_change_attribute(struct kstat *stat,
struct inode *inode)
{
- u64 chattr;
-
if (IS_I_VERSION(inode)) {
+ u64 chattr;
+
chattr = stat->ctime.tv_sec;
chattr <<= 30;
chattr += stat->ctime.tv_nsec;
chattr += inode_query_iversion(inode);
- } else {
- chattr = stat->ctime.tv_sec;
- chattr <<= 32;
- chattr += stat->ctime.tv_nsec;
- }
- return chattr;
+ return chattr;
+ } else
+ return time_to_chattr(&stat->ctime);
}
extern void fill_pre_wcc(struct svc_fh *fhp);