]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
xfs: clamp timestamp nanoseconds correctly
authorDarrick J. Wong <djwong@kernel.org>
Tue, 14 Jul 2026 06:07:15 +0000 (23:07 -0700)
committerCarlos Maiolino <cem@kernel.org>
Tue, 14 Jul 2026 09:01:47 +0000 (11:01 +0200)
LOLLM noticed an off-by-one error in the nsec clamping; fix that so that
we never have tv_nsec == 1e9.

Cc: stable@vger.kernel.org # v6.8
Fixes: 2d295fe65776d1 ("xfs: repair inode records")
Signed-off-by: "Darrick J. Wong" <djwong@kernel.org>
Assisted-by: LOLLM # finding obvious bugs
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Carlos Maiolino <cem@kernel.org>
fs/xfs/scrub/inode_repair.c

index 493dcf5cc6c1595692cb717d4244956bbf50171f..5565e80691a69e672eaf4b8717c83249c18db4a2 100644 (file)
@@ -1757,7 +1757,7 @@ xrep_clamp_timestamp(
        struct xfs_inode        *ip,
        struct timespec64       *ts)
 {
-       ts->tv_nsec = clamp_t(long, ts->tv_nsec, 0, NSEC_PER_SEC);
+       ts->tv_nsec = clamp_t(long, ts->tv_nsec, 0, NSEC_PER_SEC - 1);
        *ts = timestamp_truncate(*ts, VFS_I(ip));
 }