> > diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h > > index 9e3ae3be3de9..5a971d1b6d5e 100644 > > --- a/fs/ext4/ext4.h > > +++ b/fs/ext4/ext4.h > > @@ -835,7 +835,9 @@ do { > > \ > > } > > \ > > else {\ > > (raw_inode)->xtime = cpu_to_le32(clamp_t(int32_t, > > (inode)->xtime.tv_sec, S32_MIN, S32_MAX)); \ > > - ext4_warning_inode(inode, "inode does not support > > timestamps beyond 2038"); \ > > + if (((inode)->xtime.tv_sec != (raw_inode)->xtime) && \ > > + ((inode)->i_sb->s_time_max > S32_MAX)) > > \ > > + ext4_warning_inode(inode, "inode does not > > support timestamps beyond 2038"); \ > > } \ > > } while (0) > > Sure, that's much less objectionable. The reason it was warning for every update was because of the ratelimiting. I think ratelimiting is not working well here. I will check that part. -Deepa