From nobody Tue Jul 7 23:28:26 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 4gvy8W1J9Vz6kCQs for ; Tue, 07 Jul 2026 23:28:27 +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 "YR1" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gvy8V4LrBz3FdK for ; Tue, 07 Jul 2026 23:28:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783466906; 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=MlDLTgEocQdYGY7dZC2Il27g806pe8L2fBOjSwQWDRQ=; b=QBsYuFsLukwi8Zujn8V27+4inKs3pcGxmNdQbMBKDNLK+KTgxaEqbiqsxrzPmqpUbidQyz OZcqm9jb8HKu+6EWLJKstaOl8CrEAlsbHj2rYJ8J4sh+vrHP1v/n2vI+0xUUZag2jPA8ub waSDPQYk3F9s7pjEJiWqeEgAdHwx+nXaoI1Qc07CuNx6pRUFSywGg5kmIbcdnFP2WtgGvL 3rK0J/C8cjBsMGFb3JL2PjiwVTaLcmu0O791RcRm2Sfay+g3uewkl7itNHMV9bO3BKMy0L 37PkVHNh1fuaZ2m/r0pKUWUlBKpPWIbIYYqXuszgSqTpPm0KTUuXAI/1zhLWdg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783466906; a=rsa-sha256; cv=none; b=DERxLIt0VinmxXZ3ACD4ym48OYwf/hF0kZnY0GGKZLJkrloWYmXOM001mYmrHLRRbHxYNh mqhX20x1zd9XW7e8H9rRoQ15wpDbUjTKcC6J7rbiqanDPSklat3qwyAW+rySjvNKiaSY1f 4w1HvsFkqVpgJhRuVhgKGVZNM0m0AwmCF6N1wx3sfte3wcMXmjM7qHuTML+p9b0bLnO4qf VTv4sXPujEGrW/497baa24YcNz91RYh5d8FLnsXfNg79MkFdp3/NdCsKwdgJ52V68Gz8EN 37d3JHr6K8VYB6LzetzZVpqm4vBKmfgWyCqRobK02Df+tDBBxBAC7s72JQw9rQ== 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=1783466906; 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=MlDLTgEocQdYGY7dZC2Il27g806pe8L2fBOjSwQWDRQ=; b=T9qZqBnr48QyhewmSCOtXMuY7Pqum505OFP6RE5DELhJIWuGb9fDVkw6WFt6lDghLceFt1 0DBDaMUtUVe8Yl8hoYCWJ5H4mLufotPAJnoJ/LW2pI02J/hmdh7TZiBh2lLuwbjkcoAn1K 1l0BOuRhx3rSYayJzNcNFIXaclh2Dfj354dTVI340My0A82sQSLWdG+Plhvu6+JBzlnKJX iXJiKefidQdssWuQ7ke8nx6grPDpQgXUkUWREgcKl6RWbbHcJ5k8f3mr1NGVgExp3y+VdC RomzdtBOf7/xnXM1wB9btVMQw73fSsL2E28t1iJD8IBb+dPbJYUz1KuE+lbPSA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gvy8V33mSzw5J for ; Tue, 07 Jul 2026 23:28:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30e2a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 07 Jul 2026 23:28:26 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 080a7fe98178 - main - Regen. 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 List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list 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: 080a7fe981783590bf7f0ff39eb44dc2eecd58a2 Auto-Submitted: auto-generated Date: Tue, 07 Jul 2026 23:28:26 +0000 Message-Id: <6a4d8b9a.30e2a.76e3365f@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=080a7fe981783590bf7f0ff39eb44dc2eecd58a2 commit 080a7fe981783590bf7f0ff39eb44dc2eecd58a2 Author: Konstantin Belousov AuthorDate: 2026-05-21 19:13:18 +0000 Commit: Konstantin Belousov CommitDate: 2026-07-07 22:03:53 +0000 Regen. --- lib/libsys/_libsys.h | 2 ++ lib/libsys/syscalls.map | 2 ++ sys/compat/freebsd32/freebsd32_syscall.h | 3 ++- sys/compat/freebsd32/freebsd32_syscalls.c | 1 + sys/compat/freebsd32/freebsd32_sysent.c | 1 + sys/compat/freebsd32/freebsd32_systrace_args.c | 30 ++++++++++++++++++++++++++ sys/kern/init_sysent.c | 1 + sys/kern/syscalls.c | 1 + sys/kern/systrace_args.c | 30 ++++++++++++++++++++++++++ sys/sys/syscall.h | 3 ++- sys/sys/syscall.mk | 3 ++- sys/sys/sysproto.h | 7 ++++++ 12 files changed, 81 insertions(+), 3 deletions(-) diff --git a/lib/libsys/_libsys.h b/lib/libsys/_libsys.h index c40e56a96094..81dc7bdeb475 100644 --- a/lib/libsys/_libsys.h +++ b/lib/libsys/_libsys.h @@ -476,6 +476,7 @@ typedef int (__sys_pdrfork_t)(int *, int, int); typedef int (__sys_pdwait_t)(int, int *, int, struct __wrusage *, struct __siginfo *); typedef int (__sys_renameat2_t)(int, const char *, int, const char *, int); typedef int (__sys_pdopenpid_t)(pid_t, int); +typedef int (__sys_pddupfd_t)(int, int, int); _Noreturn void __sys__exit(int rval); int __sys_fork(void); @@ -887,6 +888,7 @@ int __sys_pdrfork(int * fdp, int pdflags, int rfflags); int __sys_pdwait(int fd, int * status, int options, struct __wrusage * wrusage, struct __siginfo * info); int __sys_renameat2(int oldfd, const char * old, int newfd, const char * new, int flags); int __sys_pdopenpid(pid_t pid, int flags); +int __sys_pddupfd(int pd, int fd, int flags); __END_DECLS #endif /* __LIBSYS_H_ */ diff --git a/lib/libsys/syscalls.map b/lib/libsys/syscalls.map index 2d0f204f9705..2e4fa4b27ed4 100644 --- a/lib/libsys/syscalls.map +++ b/lib/libsys/syscalls.map @@ -827,4 +827,6 @@ FBSDprivate_1.0 { __sys_renameat2; _pdopenpid; __sys_pdopenpid; + _pddupfd; + __sys_pddupfd; }; diff --git a/sys/compat/freebsd32/freebsd32_syscall.h b/sys/compat/freebsd32/freebsd32_syscall.h index d786f4cd4528..22704174e366 100644 --- a/sys/compat/freebsd32/freebsd32_syscall.h +++ b/sys/compat/freebsd32/freebsd32_syscall.h @@ -521,4 +521,5 @@ #define FREEBSD32_SYS_freebsd32_pdwait 601 #define FREEBSD32_SYS_renameat2 602 #define FREEBSD32_SYS_pdopenpid 603 -#define FREEBSD32_SYS_MAXSYSCALL 604 +#define FREEBSD32_SYS_pddupfd 604 +#define FREEBSD32_SYS_MAXSYSCALL 605 diff --git a/sys/compat/freebsd32/freebsd32_syscalls.c b/sys/compat/freebsd32/freebsd32_syscalls.c index 3a28ddeb843a..06606de6f52b 100644 --- a/sys/compat/freebsd32/freebsd32_syscalls.c +++ b/sys/compat/freebsd32/freebsd32_syscalls.c @@ -609,4 +609,5 @@ const char *freebsd32_syscallnames[] = { "freebsd32_pdwait", /* 601 = freebsd32_pdwait */ "renameat2", /* 602 = renameat2 */ "pdopenpid", /* 603 = pdopenpid */ + "pddupfd", /* 604 = pddupfd */ }; diff --git a/sys/compat/freebsd32/freebsd32_sysent.c b/sys/compat/freebsd32/freebsd32_sysent.c index 0541d4a7569a..a0726834cef8 100644 --- a/sys/compat/freebsd32/freebsd32_sysent.c +++ b/sys/compat/freebsd32/freebsd32_sysent.c @@ -671,4 +671,5 @@ struct sysent freebsd32_sysent[] = { { .sy_narg = AS(freebsd32_pdwait_args), .sy_call = (sy_call_t *)freebsd32_pdwait, .sy_auevent = AUE_PDWAIT, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 601 = freebsd32_pdwait */ { .sy_narg = AS(renameat2_args), .sy_call = (sy_call_t *)sys_renameat2, .sy_auevent = AUE_RENAMEAT, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 602 = renameat2 */ { .sy_narg = AS(pdopenpid_args), .sy_call = (sy_call_t *)sys_pdopenpid, .sy_auevent = AUE_PDOPENPID, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 603 = pdopenpid */ + { .sy_narg = AS(pddupfd_args), .sy_call = (sy_call_t *)sys_pddupfd, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 604 = pddupfd */ }; diff --git a/sys/compat/freebsd32/freebsd32_systrace_args.c b/sys/compat/freebsd32/freebsd32_systrace_args.c index b79d53bd62bb..ea5991bd019b 100644 --- a/sys/compat/freebsd32/freebsd32_systrace_args.c +++ b/sys/compat/freebsd32/freebsd32_systrace_args.c @@ -3466,6 +3466,15 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) *n_args = 2; break; } + /* pddupfd */ + case 604: { + struct pddupfd_args *p = params; + iarg[a++] = p->pd; /* int */ + iarg[a++] = p->fd; /* int */ + iarg[a++] = p->flags; /* int */ + *n_args = 3; + break; + } default: *n_args = 0; break; @@ -9368,6 +9377,22 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* pddupfd */ + case 604: + switch (ndx) { + case 0: + p = "int"; + break; + case 1: + p = "int"; + break; + case 2: + p = "int"; + break; + default: + break; + }; + break; default: break; }; @@ -11306,6 +11331,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* pddupfd */ + case 604: + if (ndx == 0 || ndx == 1) + p = "int"; + break; default: break; }; diff --git a/sys/kern/init_sysent.c b/sys/kern/init_sysent.c index 5e80fe8bac01..8ee5f163a550 100644 --- a/sys/kern/init_sysent.c +++ b/sys/kern/init_sysent.c @@ -670,4 +670,5 @@ struct sysent sysent[] = { { .sy_narg = AS(pdwait_args), .sy_call = (sy_call_t *)sys_pdwait, .sy_auevent = AUE_PDWAIT, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 601 = pdwait */ { .sy_narg = AS(renameat2_args), .sy_call = (sy_call_t *)sys_renameat2, .sy_auevent = AUE_RENAMEAT, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 602 = renameat2 */ { .sy_narg = AS(pdopenpid_args), .sy_call = (sy_call_t *)sys_pdopenpid, .sy_auevent = AUE_PDOPENPID, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 603 = pdopenpid */ + { .sy_narg = AS(pddupfd_args), .sy_call = (sy_call_t *)sys_pddupfd, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 604 = pddupfd */ }; diff --git a/sys/kern/syscalls.c b/sys/kern/syscalls.c index bd9e766b4e44..6d36e8c7f814 100644 --- a/sys/kern/syscalls.c +++ b/sys/kern/syscalls.c @@ -609,4 +609,5 @@ const char *syscallnames[] = { "pdwait", /* 601 = pdwait */ "renameat2", /* 602 = renameat2 */ "pdopenpid", /* 603 = pdopenpid */ + "pddupfd", /* 604 = pddupfd */ }; diff --git a/sys/kern/systrace_args.c b/sys/kern/systrace_args.c index 3ad68f186acb..4fcadbde5e28 100644 --- a/sys/kern/systrace_args.c +++ b/sys/kern/systrace_args.c @@ -3563,6 +3563,15 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) *n_args = 2; break; } + /* pddupfd */ + case 604: { + struct pddupfd_args *p = params; + iarg[a++] = p->pd; /* int */ + iarg[a++] = p->fd; /* int */ + iarg[a++] = p->flags; /* int */ + *n_args = 3; + break; + } default: *n_args = 0; break; @@ -9542,6 +9551,22 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* pddupfd */ + case 604: + switch (ndx) { + case 0: + p = "int"; + break; + case 1: + p = "int"; + break; + case 2: + p = "int"; + break; + default: + break; + }; + break; default: break; }; @@ -11575,6 +11600,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* pddupfd */ + case 604: + if (ndx == 0 || ndx == 1) + p = "int"; + break; default: break; }; diff --git a/sys/sys/syscall.h b/sys/sys/syscall.h index 13db6580b4d2..94321263756f 100644 --- a/sys/sys/syscall.h +++ b/sys/sys/syscall.h @@ -542,4 +542,5 @@ #define SYS_pdwait 601 #define SYS_renameat2 602 #define SYS_pdopenpid 603 -#define SYS_MAXSYSCALL 604 +#define SYS_pddupfd 604 +#define SYS_MAXSYSCALL 605 diff --git a/sys/sys/syscall.mk b/sys/sys/syscall.mk index b2ff9ccee001..0e1b0c91943b 100644 --- a/sys/sys/syscall.mk +++ b/sys/sys/syscall.mk @@ -445,4 +445,5 @@ MIASM = \ pdrfork.o \ pdwait.o \ renameat2.o \ - pdopenpid.o + pdopenpid.o \ + pddupfd.o diff --git a/sys/sys/sysproto.h b/sys/sys/sysproto.h index 12e12eefab9f..d86409b9eb21 100644 --- a/sys/sys/sysproto.h +++ b/sys/sys/sysproto.h @@ -1936,6 +1936,11 @@ struct pdopenpid_args { char pid_l_[PADL_(pid_t)]; pid_t pid; char pid_r_[PADR_(pid_t)]; char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; }; +struct pddupfd_args { + char pd_l_[PADL_(int)]; int pd; char pd_r_[PADR_(int)]; + char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; +}; int sys__exit(struct thread *, struct _exit_args *); int sys_fork(struct thread *, struct fork_args *); int sys_read(struct thread *, struct read_args *); @@ -2347,6 +2352,7 @@ int sys_pdrfork(struct thread *, struct pdrfork_args *); int sys_pdwait(struct thread *, struct pdwait_args *); int sys_renameat2(struct thread *, struct renameat2_args *); int sys_pdopenpid(struct thread *, struct pdopenpid_args *); +int sys_pddupfd(struct thread *, struct pddupfd_args *); #ifdef COMPAT_43 @@ -3350,6 +3356,7 @@ int freebsd14_setgroups(struct thread *, struct freebsd14_setgroups_args *); #define SYS_AUE_pdwait AUE_PDWAIT #define SYS_AUE_renameat2 AUE_RENAMEAT #define SYS_AUE_pdopenpid AUE_PDOPENPID +#define SYS_AUE_pddupfd AUE_NULL #undef PAD_ #undef PADL_