From fb42e0d0b49dcdf4c3ec6b9a5d17b2591e05b632 Mon Sep 17 00:00:00 2001 From: Tim Schlueter Date: Wed, 30 Jan 2019 23:40:52 -0800 Subject: [PATCH] Replace current_kernel_time64() calls with ktime_get_coarse_real_ts64() --- fs/bcachefs/fs.h | 4 +++- fs/bcachefs/inode.c | 9 ++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/fs/bcachefs/fs.h b/fs/bcachefs/fs.h index 9ac6fc87f69a2..feb89eecdd9ad 100644 --- a/fs/bcachefs/fs.h +++ b/fs/bcachefs/fs.h @@ -70,7 +70,9 @@ static inline unsigned nlink_bias(umode_t mode) static inline u64 bch2_current_time(struct bch_fs *c) { - return timespec_to_bch2_time(c, current_kernel_time64()); + struct timespec64 ts; + ktime_get_coarse_real_ts64(&ts); + return timespec_to_bch2_time(c, ts); } static inline bool inode_attr_changing(struct bch_inode_info *dir, diff --git a/fs/bcachefs/inode.c b/fs/bcachefs/inode.c index f851e3b731709..757b6979feab5 100644 --- a/fs/bcachefs/inode.c +++ b/fs/bcachefs/inode.c @@ -251,9 +251,12 @@ void bch2_inode_init(struct bch_fs *c, struct bch_inode_unpacked *inode_u, uid_t uid, gid_t gid, umode_t mode, dev_t rdev, struct bch_inode_unpacked *parent) { - s64 now = timespec_to_bch2_time(c, - timespec64_trunc(current_kernel_time64(), - c->sb.time_precision)); + struct timespec64 ts; + s64 now; + + ktime_get_coarse_real_ts64(&ts); + now = timespec_to_bch2_time(c, + timespec64_trunc(ts, c->sb.time_precision)); memset(inode_u, 0, sizeof(*inode_u));