From nobody Sun Aug 16 02:46:44 2026 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 4hN0jJ620qz6pH6M for ; Sun, 16 Aug 2026 02:46:44 +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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hN0jJ3F0Cz3f1Y for ; Sun, 16 Aug 2026 02:46:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1786848404; 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=7EQs4gk6OL1hdMHL6dnZjHIIE2x40woPlCB3sTRMuzE=; b=UWaVf73FtWwp/w90ZSJyQs8RsQTEvC4GCQueuPlXoZ8A3X5yHoTw+6Aaoiv5KnNIRwK66i 6Mub1avVWTbeLwUyR7ELbnrOEOyUf3HTzYVV8JfTW+1HtjyRNthCAreMuU4bNGvEtHINiT av2s1y2ygJyln1Y/pkZDo55ZNGKdwceEucKfaM5m+CJMoUwcO51aQ8Vww4pL+n1oSdjZsU 7OeVU2VDCNcTpNAPY1GHOfYolncEvk0OANZIRDzd0lYGTXB18747ANS3vHGDPaFGOOGqH0 yUtwn1xyqBV18v7gK8QG/RdQ5sW6goHfaMeZZ1CJ6Bdx+eQuJQQDVDTkCmKWXQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1786848404; a=rsa-sha256; cv=none; b=GEx/rtfwvz8lupezTSyUhMdXxV3vzmOFyzc9rlXvm2VJmrzrP3k2cGSR8a8wmK2IegVFQ6 6CfwrcoOLgW7PqZFCPVTXto4gd/my0F2VAKd3t7bQRcciKOLKQLDE8PayQXXd3o0XbJAd7 sIPLLEvOGChEEeNniwVkHMCD4GUEC84fA5ssaWvi+OLPHU42GgP/YrrnDeKBsp6d30uL+d aRQKC9LLKYzIcDti7ho7OEhls9V5bZKdr+GQvlCSRrUgbtVm7OoGbltAuWr3MRwE10DNv4 3rKbglnZH/8W4y1Z4LHsfIUoTiEVgukkZPgwvWnatM0YGsgj1s7VdiFQ3lyvKw== 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=1786848404; 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=7EQs4gk6OL1hdMHL6dnZjHIIE2x40woPlCB3sTRMuzE=; b=Hyj+fvbfHRkyXVTYY3p5uqLFb+m2xq1ZN0qoouGSDmmYgnKu+ZIYb4S5ycCrBLD3C5604a XnuO1FihgnLJbzDM5+H+6LAn2QG1FERHcc0ZNH1fHZdFeekPBp/2CyHwUu6sqPw782NiOx DQR3ppCC0b8a4d+2dGEAp6poslue33InUsTDqJexvw7X9EhtXJ6xhYeEvIeabGcvMC7BPO I6ailGwFoVoNxpTqdZ/BYQiCrHcCaB5SFQ7uSRThS85Jx8Q9QkG15eEV2gAROBvA/C6qrP z0X05PkfvUsiKvKk8jVMsTtvTqmtfhhnooIcXv1/bpV+n/qU36H6I6HVS6qpFw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hN0jJ24zTz17Qv for ; Sun, 16 Aug 2026 02:46:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 44504 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sun, 16 Aug 2026 02:46:44 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: a105154d6617 - stable/15 - Regen List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: a105154d6617c0c31237a65d5516e60da30277fa Auto-Submitted: auto-generated Date: Sun, 16 Aug 2026 02:46:44 +0000 Message-Id: <6a812494.44504.15c40ed0@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=a105154d6617c0c31237a65d5516e60da30277fa commit a105154d6617c0c31237a65d5516e60da30277fa Author: Konstantin Belousov AuthorDate: 2026-07-07 02:00:13 +0000 Commit: Konstantin Belousov CommitDate: 2026-08-16 02:41:25 +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 | 3 ++- sys/compat/freebsd32/freebsd32_systrace_args.c | 26 ++++++++++++++++++++++++++ sys/kern/init_sysent.c | 3 ++- sys/kern/syscalls.c | 1 + sys/kern/systrace_args.c | 26 ++++++++++++++++++++++++++ sys/sys/syscall.h | 3 ++- sys/sys/syscall.mk | 3 ++- sys/sys/sysproto.h | 6 ++++++ 12 files changed, 74 insertions(+), 5 deletions(-) diff --git a/lib/libsys/_libsys.h b/lib/libsys/_libsys.h index 0c61bcd2dd23..b28d53af878a 100644 --- a/lib/libsys/_libsys.h +++ b/lib/libsys/_libsys.h @@ -473,6 +473,7 @@ typedef int (__sys_jail_remove_jd_t)(int); 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); _Noreturn void __sys__exit(int rval); int __sys_fork(void); @@ -882,6 +883,7 @@ int __sys_jail_remove_jd(int fd); 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); __END_DECLS #endif /* __LIBSYS_H_ */ diff --git a/lib/libsys/syscalls.map b/lib/libsys/syscalls.map index 795844d6e748..5dd370103c7a 100644 --- a/lib/libsys/syscalls.map +++ b/lib/libsys/syscalls.map @@ -823,4 +823,6 @@ FBSDprivate_1.0 { __sys_pdwait; _renameat2; __sys_renameat2; + _pdopenpid; + __sys_pdopenpid; }; diff --git a/sys/compat/freebsd32/freebsd32_syscall.h b/sys/compat/freebsd32/freebsd32_syscall.h index 9fed7ec58669..d786f4cd4528 100644 --- a/sys/compat/freebsd32/freebsd32_syscall.h +++ b/sys/compat/freebsd32/freebsd32_syscall.h @@ -520,4 +520,5 @@ #define FREEBSD32_SYS_pdrfork 600 #define FREEBSD32_SYS_freebsd32_pdwait 601 #define FREEBSD32_SYS_renameat2 602 -#define FREEBSD32_SYS_MAXSYSCALL 603 +#define FREEBSD32_SYS_pdopenpid 603 +#define FREEBSD32_SYS_MAXSYSCALL 604 diff --git a/sys/compat/freebsd32/freebsd32_syscalls.c b/sys/compat/freebsd32/freebsd32_syscalls.c index d91d45130c89..3a28ddeb843a 100644 --- a/sys/compat/freebsd32/freebsd32_syscalls.c +++ b/sys/compat/freebsd32/freebsd32_syscalls.c @@ -608,4 +608,5 @@ const char *freebsd32_syscallnames[] = { "pdrfork", /* 600 = pdrfork */ "freebsd32_pdwait", /* 601 = freebsd32_pdwait */ "renameat2", /* 602 = renameat2 */ + "pdopenpid", /* 603 = pdopenpid */ }; diff --git a/sys/compat/freebsd32/freebsd32_sysent.c b/sys/compat/freebsd32/freebsd32_sysent.c index ce2ce8a0eb4f..767ea5ed7a5d 100644 --- a/sys/compat/freebsd32/freebsd32_sysent.c +++ b/sys/compat/freebsd32/freebsd32_sysent.c @@ -311,7 +311,7 @@ struct sysent freebsd32_sysent[] = { { .sy_narg = AS(ffclock_getcounter_args), .sy_call = (sy_call_t *)sys_ffclock_getcounter, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 241 = ffclock_getcounter */ { .sy_narg = AS(freebsd32_ffclock_setestimate_args), .sy_call = (sy_call_t *)freebsd32_ffclock_setestimate, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 242 = freebsd32_ffclock_setestimate */ { .sy_narg = AS(freebsd32_ffclock_getestimate_args), .sy_call = (sy_call_t *)freebsd32_ffclock_getestimate, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 243 = freebsd32_ffclock_getestimate */ - { .sy_narg = AS(freebsd32_clock_nanosleep_args), .sy_call = (sy_call_t *)freebsd32_clock_nanosleep, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 244 = freebsd32_clock_nanosleep */ + { .sy_narg = AS(freebsd32_clock_nanosleep_args), .sy_call = (sy_call_t *)freebsd32_clock_nanosleep, .sy_auevent = AUE_NULL, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 244 = freebsd32_clock_nanosleep */ { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 245 = reserved for local use */ { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 246 = reserved for local use */ { .sy_narg = AS(freebsd32_clock_getcpuclockid2_args), .sy_call = (sy_call_t *)freebsd32_clock_getcpuclockid2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 247 = freebsd32_clock_getcpuclockid2 */ @@ -670,4 +670,5 @@ struct sysent freebsd32_sysent[] = { { .sy_narg = AS(pdrfork_args), .sy_call = (sy_call_t *)sys_pdrfork, .sy_auevent = AUE_PDRFORK, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 600 = pdrfork */ { .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 */ }; diff --git a/sys/compat/freebsd32/freebsd32_systrace_args.c b/sys/compat/freebsd32/freebsd32_systrace_args.c index e85cf4765c98..b79d53bd62bb 100644 --- a/sys/compat/freebsd32/freebsd32_systrace_args.c +++ b/sys/compat/freebsd32/freebsd32_systrace_args.c @@ -3458,6 +3458,14 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) *n_args = 5; break; } + /* pdopenpid */ + case 603: { + struct pdopenpid_args *p = params; + iarg[a++] = p->pid; /* pid_t */ + iarg[a++] = p->flags; /* int */ + *n_args = 2; + break; + } default: *n_args = 0; break; @@ -9347,6 +9355,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* pdopenpid */ + case 603: + switch (ndx) { + case 0: + p = "pid_t"; + break; + case 1: + p = "int"; + break; + default: + break; + }; + break; default: break; }; @@ -11280,6 +11301,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* pdopenpid */ + case 603: + 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 6345293dfb7f..d9c85bb928c0 100644 --- a/sys/kern/init_sysent.c +++ b/sys/kern/init_sysent.c @@ -310,7 +310,7 @@ struct sysent sysent[] = { { .sy_narg = AS(ffclock_getcounter_args), .sy_call = (sy_call_t *)sys_ffclock_getcounter, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 241 = ffclock_getcounter */ { .sy_narg = AS(ffclock_setestimate_args), .sy_call = (sy_call_t *)sys_ffclock_setestimate, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 242 = ffclock_setestimate */ { .sy_narg = AS(ffclock_getestimate_args), .sy_call = (sy_call_t *)sys_ffclock_getestimate, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 243 = ffclock_getestimate */ - { .sy_narg = AS(clock_nanosleep_args), .sy_call = (sy_call_t *)sys_clock_nanosleep, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 244 = clock_nanosleep */ + { .sy_narg = AS(clock_nanosleep_args), .sy_call = (sy_call_t *)sys_clock_nanosleep, .sy_auevent = AUE_NULL, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 244 = clock_nanosleep */ { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 245 = reserved for local use */ { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 246 = reserved for local use */ { .sy_narg = AS(clock_getcpuclockid2_args), .sy_call = (sy_call_t *)sys_clock_getcpuclockid2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 247 = clock_getcpuclockid2 */ @@ -669,4 +669,5 @@ struct sysent sysent[] = { { .sy_narg = AS(pdrfork_args), .sy_call = (sy_call_t *)sys_pdrfork, .sy_auevent = AUE_PDRFORK, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 600 = pdrfork */ { .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 */ }; diff --git a/sys/kern/syscalls.c b/sys/kern/syscalls.c index 1594b03016da..67b6ce31cb08 100644 --- a/sys/kern/syscalls.c +++ b/sys/kern/syscalls.c @@ -608,4 +608,5 @@ const char *syscallnames[] = { "pdrfork", /* 600 = pdrfork */ "pdwait", /* 601 = pdwait */ "renameat2", /* 602 = renameat2 */ + "pdopenpid", /* 603 = pdopenpid */ }; diff --git a/sys/kern/systrace_args.c b/sys/kern/systrace_args.c index dc6f55de9fa4..e82db22794f5 100644 --- a/sys/kern/systrace_args.c +++ b/sys/kern/systrace_args.c @@ -3545,6 +3545,14 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) *n_args = 5; break; } + /* pdopenpid */ + case 603: { + struct pdopenpid_args *p = params; + iarg[a++] = p->pid; /* pid_t */ + iarg[a++] = p->flags; /* int */ + *n_args = 2; + break; + } default: *n_args = 0; break; @@ -9492,6 +9500,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* pdopenpid */ + case 603: + switch (ndx) { + case 0: + p = "pid_t"; + break; + case 1: + p = "int"; + break; + default: + break; + }; + break; default: break; }; @@ -11515,6 +11536,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* pdopenpid */ + case 603: + if (ndx == 0 || ndx == 1) + p = "int"; + break; default: break; }; diff --git a/sys/sys/syscall.h b/sys/sys/syscall.h index e1d3e7daa7d2..73666f1dad22 100644 --- a/sys/sys/syscall.h +++ b/sys/sys/syscall.h @@ -540,4 +540,5 @@ #define SYS_pdrfork 600 #define SYS_pdwait 601 #define SYS_renameat2 602 -#define SYS_MAXSYSCALL 603 +#define SYS_pdopenpid 603 +#define SYS_MAXSYSCALL 604 diff --git a/sys/sys/syscall.mk b/sys/sys/syscall.mk index 8b0f61233cee..47d317e86b08 100644 --- a/sys/sys/syscall.mk +++ b/sys/sys/syscall.mk @@ -443,4 +443,5 @@ MIASM = \ jail_remove_jd.o \ pdrfork.o \ pdwait.o \ - renameat2.o + renameat2.o \ + pdopenpid.o diff --git a/sys/sys/sysproto.h b/sys/sys/sysproto.h index b458b9426db7..a4308fe2861b 100644 --- a/sys/sys/sysproto.h +++ b/sys/sys/sysproto.h @@ -1926,6 +1926,10 @@ struct renameat2_args { char new_l_[PADL_(const char *)]; const char * new; char new_r_[PADR_(const char *)]; char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; }; +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)]; +}; int sys__exit(struct thread *, struct _exit_args *); int sys_fork(struct thread *, struct fork_args *); int sys_read(struct thread *, struct read_args *); @@ -2335,6 +2339,7 @@ int sys_jail_remove_jd(struct thread *, struct jail_remove_jd_args *); 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 *); #ifdef COMPAT_43 @@ -3336,6 +3341,7 @@ int freebsd14_setgroups(struct thread *, struct freebsd14_setgroups_args *); #define SYS_AUE_pdrfork AUE_PDRFORK #define SYS_AUE_pdwait AUE_PDWAIT #define SYS_AUE_renameat2 AUE_RENAMEAT +#define SYS_AUE_pdopenpid AUE_PDOPENPID #undef PAD_ #undef PADL_