From nobody Sun Sep 17 15:04:18 2023
X-Original-To: dev-commits-src-branches@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 4RpWRQ58j3z4t1Z6;
	Sun, 17 Sep 2023 15:04:18 +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 "R3" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4RpWRQ4Fngz4FlL;
	Sun, 17 Sep 2023 15:04:18 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1694963058;
	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=tGKyqQTXWpucTVX4NUdQUUfqgaMW04/UXsCwcTOAK9Q=;
	b=c8PqPAn/qlAZHw5ZwOqC7oB9vij5R7kJ75MjllmOo4rlLVOeY0rTkC2IJ6nTf2v8QtmTdX
	B0mxOMer1Px23po+SmhZUdgVSJf+liz9nc2VBDXI+8X0/ujwdzfR3Da4buYVfk6vVDGnjB
	tRT5qxjLxFxPcx7PEvMbVXQwQ0Ah4PZSBHfjuvxOMDt1iPuvWMJreO81AKA6RYiZvoFjEp
	6VhJPoI9qckgARLiQtDTkmI8fEI9i58Xl9l81EBoxye4VHL3/a/UKgAGuNjL4w2mwSzOh/
	sNzFiLJlimyH4gMtJDnaeyo7Ikf+B3//lNP7MKYH5YPkhqBhjRoVWNDIer1oxg==
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1694963058; a=rsa-sha256; cv=none;
	b=s199KfTxcLRuJvjdt8r3cd14GQoV1jkdDm4ssQPSxLtQsZLPd1g6SgoLRwEDda+ogcBSLi
	E7SzSm0If1ph3Tgkw9k+jbUGUMifVYHvfQbtfWU08XIToSlNchdvzRvvEUZFcUXVJ+3vAP
	WVGqt2wdWNezkDuylKr4eE0IgKt1Q2OUo1iyhDawoOP/olSsbohyiJVXZqw6oX9iwDWszI
	h2QKXGNJkpRT224xlHk/ssh849Ty7LocPd51yX4WqIkQqQp9++6BCv9HWLKUwI6n5ZdGOr
	S+WA2edGB3L7iszE5GoRqv9P9pCNxTreS9uUtIWcD8uTVzqWw+JSoFgkHUujvw==
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=1694963058;
	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=tGKyqQTXWpucTVX4NUdQUUfqgaMW04/UXsCwcTOAK9Q=;
	b=Y6UO3B1zvXl9cBC+YCGUsNpf9SHwrjNoH10E2abXf5ycGynDZYJqzyCnvEX2JPY7/FkL++
	vjfKEfpXxY0QsDZnzoUKe2viZ4PWvYogdZLwPgSmZ5phNaWPZc9l+OxsNf/CSD9gIRZ12a
	riysfDwHRbz2yIL+7nvcn2ttJRTJRv7O0vXd4C+hrBPNmcjw+0Tq3U8SpEvfFZdHXcXFDD
	Kjq14L85GjnL4b91acv78Psr0ppRzV5f05hDjmPrPwcPK9JXzf2YEl8FIw3md5lHAaZ/RL
	sf+42N3OEW0RLUVEZ6YKaDxDQbLXw3x5b1GfpFb1a4MEE8oe1Ftu72h+HVpfhg==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(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 did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4RpWRQ3CxXztb8;
	Sun, 17 Sep 2023 15:04:18 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 38HF4Ixg072303;
	Sun, 17 Sep 2023 15:04:18 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 38HF4IjN072300;
	Sun, 17 Sep 2023 15:04:18 GMT
	(envelope-from git)
Date: Sun, 17 Sep 2023 15:04:18 GMT
Message-Id: <202309171504.38HF4IjN072300@gitrepo.freebsd.org>
To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,
        dev-commits-src-branches@FreeBSD.org
From: Warner Losh <imp@FreeBSD.org>
Subject: git: 27d567847b18 - stable/14 - timerfd: Relocate 32-bit
  compat code
List-Id: Commits to the stable branches of the FreeBSD src repository <dev-commits-src-branches.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches
List-Help: <mailto:dev-commits-src-branches+help@freebsd.org>
List-Post: <mailto:dev-commits-src-branches@freebsd.org>
List-Subscribe: <mailto:dev-commits-src-branches+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-src-branches+unsubscribe@freebsd.org>
Sender: owner-dev-commits-src-branches@freebsd.org
X-BeenThere: dev-commits-src-branches@freebsd.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: imp
X-Git-Repository: src
X-Git-Refname: refs/heads/stable/14
X-Git-Reftype: branch
X-Git-Commit: 27d567847b18275012bf39fb517dceee41b1ed33
Auto-Submitted: auto-generated

The branch stable/14 has been updated by imp:

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

commit 27d567847b18275012bf39fb517dceee41b1ed33
Author:     Jake Freeland <jfree@FreeBSD.org>
AuthorDate: 2023-09-17 15:01:58 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2023-09-17 15:01:59 +0000

    timerfd: Relocate 32-bit compat code
    
    32-bit compatibility code is conventionally stored in
    sys/compat/freebsd32. Move freebsd32_timerfd_gettime() and
    freebsd32_timerfd_settime() from sys/kern/sys_timerfd.c to
    sys/compat/freebsd32/freebsd32_misc.c.
    
    MFC After: 3 days
    Reviewed by: imp, markj
    Differential Revision; https://reviews.freebsd.org/D41640
    
    (cherry picked from commit 918966a27479b4fb7c4c8999c4926d83c2c081e5)
---
 sys/compat/freebsd32/freebsd32_misc.c | 55 +++++++++++++++++++++++++++++++
 sys/kern/sys_timerfd.c                | 61 -----------------------------------
 2 files changed, 55 insertions(+), 61 deletions(-)

diff --git a/sys/compat/freebsd32/freebsd32_misc.c b/sys/compat/freebsd32/freebsd32_misc.c
index 22ee4897083e..c26e7b97e717 100644
--- a/sys/compat/freebsd32/freebsd32_misc.c
+++ b/sys/compat/freebsd32/freebsd32_misc.c
@@ -82,6 +82,7 @@
 #include <sys/sysproto.h>
 #include <sys/systm.h>
 #include <sys/thr.h>
+#include <sys/timerfd.h>
 #include <sys/timex.h>
 #include <sys/unistd.h>
 #include <sys/ucontext.h>
@@ -3138,6 +3139,60 @@ freebsd32_ktimer_gettime(struct thread *td,
 	return (error);
 }
 
+int
+freebsd32_timerfd_gettime(struct thread *td,
+    struct freebsd32_timerfd_gettime_args *uap)
+{
+	struct itimerspec curr_value;
+	struct itimerspec32 curr_value32;
+	int error;
+
+	error = kern_timerfd_gettime(td, uap->fd, &curr_value);
+	if (error == 0) {
+		CP(curr_value, curr_value32, it_value.tv_sec);
+		CP(curr_value, curr_value32, it_value.tv_nsec);
+		CP(curr_value, curr_value32, it_interval.tv_sec);
+		CP(curr_value, curr_value32, it_interval.tv_nsec);
+		error = copyout(&curr_value32, uap->curr_value,
+		    sizeof(curr_value32));
+	}
+
+	return (error);
+}
+
+int
+freebsd32_timerfd_settime(struct thread *td,
+    struct freebsd32_timerfd_settime_args *uap)
+{
+	struct itimerspec new_value, old_value;
+	struct itimerspec32 new_value32, old_value32;
+	int error;
+
+	error = copyin(uap->new_value, &new_value32, sizeof(new_value32));
+	if (error != 0)
+		return (error);
+	CP(new_value32, new_value, it_value.tv_sec);
+	CP(new_value32, new_value, it_value.tv_nsec);
+	CP(new_value32, new_value, it_interval.tv_sec);
+	CP(new_value32, new_value, it_interval.tv_nsec);
+	if (uap->old_value == NULL) {
+		error = kern_timerfd_settime(td, uap->fd, uap->flags,
+		    &new_value, NULL);
+	} else {
+		error = kern_timerfd_settime(td, uap->fd, uap->flags,
+		    &new_value, &old_value);
+		if (error == 0) {
+			CP(old_value, old_value32, it_value.tv_sec);
+			CP(old_value, old_value32, it_value.tv_nsec);
+			CP(old_value, old_value32, it_interval.tv_sec);
+			CP(old_value, old_value32, it_interval.tv_nsec);
+			error = copyout(&old_value32, uap->old_value,
+			    sizeof(old_value32));
+		}
+	}
+	return (error);
+}
+
 int
 freebsd32_clock_getcpuclockid2(struct thread *td,
     struct freebsd32_clock_getcpuclockid2_args *uap)
diff --git a/sys/kern/sys_timerfd.c b/sys/kern/sys_timerfd.c
index a81b5ad0fade..e245baed88be 100644
--- a/sys/kern/sys_timerfd.c
+++ b/sys/kern/sys_timerfd.c
@@ -54,11 +54,6 @@
 
 #include <security/audit/audit.h>
 
-#ifdef COMPAT_FREEBSD32
-#include <compat/freebsd32/freebsd32.h>
-#include <compat/freebsd32/freebsd32_proto.h>
-#endif
-
 static MALLOC_DEFINE(M_TIMERFD, "timerfd", "timerfd structures");
 
 static struct mtx timerfd_list_lock;
@@ -598,59 +593,3 @@ sys_timerfd_settime(struct thread *td, struct timerfd_settime_args *uap)
 	}
 	return (error);
 }
-
-#ifdef COMPAT_FREEBSD32
-int
-freebsd32_timerfd_gettime(struct thread *td,
-    struct freebsd32_timerfd_gettime_args *uap)
-{
-	struct itimerspec curr_value;
-	struct itimerspec32 curr_value32;
-	int error;
-
-	error = kern_timerfd_gettime(td, uap->fd, &curr_value);
-	if (error == 0) {
-		CP(curr_value, curr_value32, it_value.tv_sec);
-		CP(curr_value, curr_value32, it_value.tv_nsec);
-		CP(curr_value, curr_value32, it_interval.tv_sec);
-		CP(curr_value, curr_value32, it_interval.tv_nsec);
-		error = copyout(&curr_value32, uap->curr_value,
-		    sizeof(curr_value32));
-	}
-
-	return (error);
-}
-
-int
-freebsd32_timerfd_settime(struct thread *td,
-    struct freebsd32_timerfd_settime_args *uap)
-{
-	struct itimerspec new_value, old_value;
-	struct itimerspec32 new_value32, old_value32;
-	int error;
-
-	error = copyin(uap->new_value, &new_value32, sizeof(new_value32));
-	if (error != 0)
-		return (error);
-	CP(new_value32, new_value, it_value.tv_sec);
-	CP(new_value32, new_value, it_value.tv_nsec);
-	CP(new_value32, new_value, it_interval.tv_sec);
-	CP(new_value32, new_value, it_interval.tv_nsec);
-	if (uap->old_value == NULL) {
-		error = kern_timerfd_settime(td, uap->fd, uap->flags,
-		    &new_value, NULL);
-	} else {
-		error = kern_timerfd_settime(td, uap->fd, uap->flags,
-		    &new_value, &old_value);
-		if (error == 0) {
-			CP(old_value, old_value32, it_value.tv_sec);
-			CP(old_value, old_value32, it_value.tv_nsec);
-			CP(old_value, old_value32, it_interval.tv_sec);
-			CP(old_value, old_value32, it_interval.tv_nsec);
-			error = copyout(&old_value32, uap->old_value,
-			    sizeof(old_value32));
-		}
-	}
-	return (error);
-}
-#endif