git: ddefff3810c1 - stable/15 - Merge commit bfb276e55c76 from upstream OpenZFS (by Jessica Clarke)

From: Jessica Clarke <jrtc27_at_FreeBSD.org>
Date: Wed, 18 Feb 2026 18:49:12 UTC
The branch stable/15 has been updated by jrtc27:

URL: https://cgit.FreeBSD.org/src/commit/?id=ddefff3810c1b40801bd99f42533e0d414fa0236

commit ddefff3810c1b40801bd99f42533e0d414fa0236
Author:     Jessica Clarke <jrtc27@FreeBSD.org>
AuthorDate: 2026-02-18 18:45:26 +0000
Commit:     Jessica Clarke <jrtc27@FreeBSD.org>
CommitDate: 2026-02-18 18:49:01 +0000

    Merge commit bfb276e55c76 from upstream OpenZFS (by Jessica Clarke)
    
      Once upon a time, 32-bit PowerPC did indeed have a 32-bit time_t, but
      FreeBSD 12.0 switched to a 64-bit time_t for PowerPC as an ABI break,
      which predates the addition of FreeBSD support to OpenZFS. Moreover,
      64-bit PowerPC has existed since FreeBSD 9.0, where __powerpc__ is also
      defined (alongside __powerpc64__ to disambiguate), which has always had
      a 64-bit time_t. This code has therefore always been wrong for all
      PowerPC variants. Fix this by limiting the 32-bit case to just i386,
      which is the only architecture in FreeBSD to have a 32-bit time_t and
      not have broken ABI, due to its special legacy compatibility status.
    
      Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
      Reviewed-by: Alexander Motin <alexander.motin@TrueNAS.com>
      Signed-off-by: Jessica Clarke <jrtc27@jrtc27.com>
      Closes #18217
      Closes #18218
    
    Reported by:    fuz
    MFC after:      1 day
    
    (cherry picked from commit 45c1e44779e3d365f5e31f75546d48ce34e4ee05)
---
 sys/contrib/openzfs/include/os/freebsd/spl/sys/time.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/contrib/openzfs/include/os/freebsd/spl/sys/time.h b/sys/contrib/openzfs/include/os/freebsd/spl/sys/time.h
index 14b42f2e7087..c72c3ea3648f 100644
--- a/sys/contrib/openzfs/include/os/freebsd/spl/sys/time.h
+++ b/sys/contrib/openzfs/include/os/freebsd/spl/sys/time.h
@@ -51,7 +51,7 @@ extern int hz;
 
 typedef longlong_t	hrtime_t;
 
-#if defined(__i386__) || defined(__powerpc__)
+#ifdef __i386__
 #define	TIMESPEC_OVERFLOW(ts)						\
 	((ts)->tv_sec < INT32_MIN || (ts)->tv_sec > INT32_MAX)
 #else