On Sat, Dec 07, 2019 at 06:04:38PM -0800, Deepa Dinamani wrote: > On Fri, Dec 6, 2019 at 10:02 PM Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote: > > > > On Thu, Dec 05, 2019 at 06:43:26PM -0800, Deepa Dinamani wrote: > > > On Mon, Dec 2, 2019 at 9:20 PM Deepa Dinamani <deepa.kernel@xxxxxxxxx> wrote: > > > > This series aims at deleting timespec64_trunc(). > > > > There is a new api: timestamp_truncate() that is the > > > > replacement api. The api additionally does a limits > > > > check on the filesystem timestamps. > > > > > > Al/Andrew, can one of you help merge these patches? > > > > Looks sane. Could you check if #misc.timestamp looks sane to you? > > Yes, that looks sane to me. > > > One thing that leaves me scratching head is kernfs - surely we > > are _not_ limited by any external layouts there, so why do we > > need to bother with truncation? > > I think I was more pedantic then, and was explicitly truncating times > before assignment to inode timestamps. But, Arnd has since coached me > that we should not introduce things to safe guard against all > possibilities, but only what is needed currently. So this kernfs > truncate is redundant, given the limits and the granularity match vfs > timestamp representation limits. OK... I've tossed a followup removing the truncation from kernfs; the whole series looks reasonably safe, but I don't think it's urgent enough to even try getting it merged before -rc1. So here's what I'm going to do: immediately after -rc1 it gets renamed[*] to #imm.timestamp, which will be in the never-modified mode, in #for-next from the very begining and safe for other trees to pull. Current shortlog: Al Viro (1): kernfs: don't bother with timestamp truncation Amir Goldstein (1): utimes: Clamp the timestamps in notify_change() Deepa Dinamani (6): fs: fat: Eliminate timespec64_trunc() usage fs: cifs: Delete usage of timespec64_trunc fs: ceph: Delete timespec64_trunc() usage fs: ubifs: Eliminate timespec64_trunc() usage fs: Delete timespec64_trunc() fs: Do not overload update_time Diffstat: fs/attr.c | 23 +++++++++++------------ fs/ceph/mds_client.c | 4 +--- fs/cifs/inode.c | 13 +++++++------ fs/configfs/inode.c | 9 +++------ fs/f2fs/file.c | 18 ++++++------------ fs/fat/misc.c | 10 +++++++++- fs/inode.c | 33 +++------------------------------ fs/kernfs/inode.c | 6 +++--- fs/ntfs/inode.c | 18 ++++++------------ fs/ubifs/file.c | 18 ++++++------------ fs/ubifs/sb.c | 11 ++++------- fs/utimes.c | 4 ++-- include/linux/fs.h | 1 - 13 files changed, 61 insertions(+), 107 deletions(-) [*] right now it's based on v5.4; I don't see anything that would warrant rebasing it to -rc1 at the moment, but if anything of that sort shows up tomorrow, s/renamed/rebased to -rc1 and renamed/.