From nobody Mon Feb 9 19:07:04 2026 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4f8vMF0Wnfz6Rs4F for ; Mon, 09 Feb 2026 19:07:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4f8vMD6f5Mz3C4h for ; Mon, 09 Feb 2026 19:07:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770664024; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k30a70GZwumoQdB0Mxe2qamBVMQ6m/lnFygQFQJeq6E=; b=uxxJgCTEr6miBm1LvBlz6YnQ43pju9Wn/MnzRv79tYEyWxR0g6QazNsGAvfgrv+espcUdC oXX4xPZApF2G2oxqqXeir1MxeamPfyo5FVwXKsLxuf8cGJINfUGwXOXVefQ4tihwUPeiXS G6Ng7bEUZd0/iPkZD6R4Ho/lAqxsM7a9qHgLm4/h7FJs/7/1gSUd+bzQ1gjWMK8PfCubZf rIxXKoRJKcI3Ios73LaQima5MDqEadnaFPs2YaV387Hu/8PlkVTQM0Azx7j+riCP78m+Ng KiUbngxFuw4O4mBP8s7J5CnMSgm7LdUDzuTgo4zq9F+uqep/YlZzJh2Od3Nx6g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1770664024; a=rsa-sha256; cv=none; b=brEsm4xGC3NvdZw18vUS4/fK6FehNtzp62GYqWB8kmBAIn8G7kEmsGov5SEfjQB6RT8YO6 5eTjvGA4UhoCqJfhr+yv5tuZu+ZBjc3SJFPQSH2KtL8BJtl9nh900/dyOVLGw8g8c6oCIu 3spnAtZbZrbtblE/Ww+b3Za5HEGVqiluh7H11TJ0VpGX9z42etTGv39N2YXMfIvqq6LEXR 4lYWSjuFl0ivMv72ZHGKGUrGGg7UJFbkrlAEmpv4xvbsWQ2b+JdBIZvj1brFbKipvzC0uu ff6DKRJRi73PHT40t+ytlycyr/xrKvL26zrFt/rraDmM/89VuYr5NzPIjvx73A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770664024; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k30a70GZwumoQdB0Mxe2qamBVMQ6m/lnFygQFQJeq6E=; b=iI5myPLuMfEmTkjjNtQpHXBpQsXRsDAUYUnrEBnbd0mgpFlcINCYnCXMjc0m1BIsmwjgkp slligsFWgUVOYm1KIUzKTqhcJ04yjKMpkYUuO1RdgZ6k6h5zRNwkfuCc3MWcYStxxCKcJU YjD+8AEMKPNBjyho0shCKjxg9FNiCK6SwdTqv9uX2nnU77uBeN/YRDGxxmd0nHpigoB1QM csUVhXQ+7og5d7NQukGUiQKtTxzA717dot66GZcacCe/tvyo9d9QppNYBbE/qy+P4rhLL9 nZrY/jJoILoRZsuZFeB/oH+03tbN5CIRktJ4ezS9Mezm6sAtEcmxegfa9FTUGA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4f8vMD64k1zm3x for ; Mon, 09 Feb 2026 19:07:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 366a5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 09 Feb 2026 19:07:04 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 87632ddf67b0 - main - openzfs sys/types32.h: use abi_compat.h for time32_t List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 87632ddf67b01f3d4787d10332afc1eeece52e2d Auto-Submitted: auto-generated Date: Mon, 09 Feb 2026 19:07:04 +0000 Message-Id: <698a3058.366a5.7f729abc@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=87632ddf67b01f3d4787d10332afc1eeece52e2d commit 87632ddf67b01f3d4787d10332afc1eeece52e2d Author: Konstantin Belousov AuthorDate: 2026-02-06 23:47:13 +0000 Commit: Konstantin Belousov CommitDate: 2026-02-09 18:57:20 +0000 openzfs sys/types32.h: use abi_compat.h for time32_t The time32_t typedef leaks into openzfs compilation environment through sys/event.h. Simultaneously, openzfs provides its own definition that is only correct for amd64 on FreeBSD. Try to fix it by using sys/abi_compat.h directly. Since toolchain build from the make buildworld uses host abi_compat.h, add a preprocessor symbol __HAVE_TIME32_T to signal consumers that time32_t is typedef'ed. If not defined, fall back to old and wrong time32_t, which is enough for bootstraping toolchain. Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135 --- sys/contrib/openzfs/include/os/freebsd/spl/sys/types32.h | 3 ++- sys/contrib/openzfs/lib/libspl/include/sys/types32.h | 5 +++++ sys/sys/abi_compat.h | 7 ++++++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/sys/contrib/openzfs/include/os/freebsd/spl/sys/types32.h b/sys/contrib/openzfs/include/os/freebsd/spl/sys/types32.h index 5b7131923460..cb2ef27cf933 100644 --- a/sys/contrib/openzfs/include/os/freebsd/spl/sys/types32.h +++ b/sys/contrib/openzfs/include/os/freebsd/spl/sys/types32.h @@ -30,9 +30,10 @@ #ifndef _SPL_TYPES32_H #define _SPL_TYPES32_H +#include + typedef uint32_t caddr32_t; typedef int32_t daddr32_t; -typedef int32_t time32_t; typedef uint32_t size32_t; #endif /* _SPL_TYPES32_H */ diff --git a/sys/contrib/openzfs/lib/libspl/include/sys/types32.h b/sys/contrib/openzfs/lib/libspl/include/sys/types32.h index 1bcae20187ad..850435b29f2a 100644 --- a/sys/contrib/openzfs/lib/libspl/include/sys/types32.h +++ b/sys/contrib/openzfs/lib/libspl/include/sys/types32.h @@ -63,7 +63,12 @@ typedef uint32_t dev32_t; typedef int32_t pid32_t; typedef uint32_t size32_t; typedef int32_t ssize32_t; +#ifdef __FreeBSD__ +#include +#endif +#ifndef __HAVE_TIME32_T typedef int32_t time32_t; +#endif typedef int32_t clock32_t; typedef struct timespec32 { diff --git a/sys/sys/abi_compat.h b/sys/sys/abi_compat.h index 69fb349edc7a..f190dcda9b68 100644 --- a/sys/sys/abi_compat.h +++ b/sys/sys/abi_compat.h @@ -52,11 +52,16 @@ typedef struct { #endif } freebsd32_uint64_t; -#ifdef __amd64__ +#if __SIZEOF_LONG__ == 8 +#if defined __amd64__ typedef __int32_t time32_t; #else typedef __int64_t time32_t; #endif +#else +typedef __int32_t time32_t; +#endif +#define __HAVE_TIME32_T #define PTRIN(v) (void *)(uintptr_t)(v) #define PTROUT(v) (uintptr_t)(v)