aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2026-02-05 19:08:06 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2026-02-09 18:57:19 +0000
commite651c64bcab08c7b12d8ad6e3ad0b1ef3af3b875 (patch)
treeef97f4f694f9761553aa5e67ae8513bb6f111ab8
parentc3a04a9585ae233c98ee2eef73e6a80d17512578 (diff)
sys/abi_compat.h: move freebsd32_uint64_t and FU64_CP() there
Use private names for uintXX_t types. Remove conflicting (but equal) PTR_IN() definition from dev/mfi.c. Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
-rw-r--r--sys/compat/freebsd32/freebsd32.h18
-rw-r--r--sys/dev/mfi/mfi.c2
-rw-r--r--sys/sys/abi_compat.h22
3 files changed, 21 insertions, 21 deletions
diff --git a/sys/compat/freebsd32/freebsd32.h b/sys/compat/freebsd32/freebsd32.h
index 25703859a7bb..1b8d2b7fe084 100644
--- a/sys/compat/freebsd32/freebsd32.h
+++ b/sys/compat/freebsd32/freebsd32.h
@@ -38,24 +38,6 @@
#include <sys/user.h>
#include <sys/_ffcounter.h>
-/*
- * i386 is the only arch with a 32-bit time_t.
- * Also it is the only arch with (u)int64_t having 4-bytes alignment.
- */
-typedef struct {
-#ifdef __amd64__
- uint32_t val[2];
-#else
- uint64_t val;
-#endif
-} freebsd32_uint64_t;
-
-#ifdef __amd64__
-typedef int32_t time32_t;
-#else
-typedef int64_t time32_t;
-#endif
-
struct timeval32 {
time32_t tv_sec;
int32_t tv_usec;
diff --git a/sys/dev/mfi/mfi.c b/sys/dev/mfi/mfi.c
index a7d98f06aea3..474afcff60a7 100644
--- a/sys/dev/mfi/mfi.c
+++ b/sys/dev/mfi/mfi.c
@@ -3084,8 +3084,6 @@ out:
return (error);
}
-#define PTRIN(p) ((void *)(uintptr_t)(p))
-
static int
mfi_ioctl(struct cdev *dev, u_long cmd, caddr_t arg, int flag, struct thread *td)
{
diff --git a/sys/sys/abi_compat.h b/sys/sys/abi_compat.h
index 2fcf598ceb7f..1753d8dd25c2 100644
--- a/sys/sys/abi_compat.h
+++ b/sys/sys/abi_compat.h
@@ -29,10 +29,30 @@
#ifndef _ABI_COMPAT_H_
#define _ABI_COMPAT_H_
+#include <sys/_types.h>
+
/*
- * Helper macros for translating objects between different ABIs.
+ * Helper types and macros for translating objects between different ABIs.
*/
+/*
+ * i386 is the only arch with a 32-bit time_t.
+ * Also it is the only arch with (u)int64_t having 4-bytes alignment.
+ */
+typedef struct {
+#ifdef __amd64__
+ __uint32_t val[2];
+#else
+ __uint64_t val;
+#endif
+} freebsd32_uint64_t;
+
+#ifdef __amd64__
+typedef __int32_t time32_t;
+#else
+typedef __int64_t time32_t;
+#endif
+
#define PTRIN(v) (void *)(uintptr_t)(v)
#define PTROUT(v) (uintptr_t)(v)