From nobody Wed Jan 24 05:12:24 2024 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 4TKXBx45Zgz57T11; Wed, 24 Jan 2024 05:12:25 +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 4TKXBx1DDpz4ZYf; Wed, 24 Jan 2024 05:12:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1706073145; 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=DvFyP4oCgukcHTqWxeOnLhfjZA6WxkOHOhuUvgLAYdA=; b=mnm+WYRAzU5A5iDNEYeqCRAlepUVxvWJU27C2o6wJc1zcifYDGJ5bM6u6ZeiK7UnI2r6V6 rZ2Id8+Q0Wu9xvd4m7EJIxVGAsqsDIDeTU/6XiVDvKIwROv5aP4Wo7Xp+XQ94TWjDOlsF9 u/7Aw4KKVpKEknqnHyDF0PS2M1cHjKfZN38sO9ZdwkZHHw3aL3vj8kZIkOPiG6s3q2Mo5j FMUiKdXWyZt1KY4zb+4STwhhYI+8VrbbBFC0S3m/+QQdhF7NKMsDMLvRwuiakbGoblctCX o1kJ9nwraadgvsicqutq4BgF3JDQNF0bHTfNZRgOe/ZkDEaE/TbpEGwRJHgk9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1706073145; 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=DvFyP4oCgukcHTqWxeOnLhfjZA6WxkOHOhuUvgLAYdA=; b=HsENDgx1febIIKYaI3OCy3xR4WERT1GfRn2q6tSUcGlD5NEKEzsTkK/fvFLkI4bg0HtVnh m04z/n60D0GOGAg1nwm9KEaht7R9sEcdTUI11xVg8ABT2QI7idJy/BKiaGMJmKr7eUgDpX svHHGfDvROQXnjeyrCIWcxs1f3+49ZFILyDaG/qGDw51hhxyilsvDK1vkxO7rmPGD9AZ0U vpflJPsR6G0moFuaoQjH50SAUzm6JvTYMPP+ET2eynol1xaUTUWHX4bDUdYQdiRsMA5AqA 88F8bLN9iKMrey2EOXutAKoWH/l6hI27i59TmxqTzhZMjRajMuefjvuOWCPVhA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1706073145; a=rsa-sha256; cv=none; b=n6B3ZvUkx4PHbl93uG1ci+N6UUj5W8iUU5u+P5eK9jpRy2yMJAw+JEoDGZW8l7B+X8f4gr cnqFX3vbr7gBosn6uqV96watHLTQADMkpkLQ5HgaIC0mz96WrcJC6qxz05txLRw5qdPTlZ CR5OjySJ4gBeyRNFk4tNzLo5r3UmAk8dgVefIW8qBVBLgiolKn7Zusw1WyJkKGV/HERe2G wcpKTdAayHM6CReMOQMF+UbEebQZgT2lCao1wfXy2CTaDKJThZLvZAxs8jqyNbyxs3S8UO GzYT3G0eFoPn/CL+PSGoa0mWaDTWdjHRkgLLOjIAqc23H2EhNV9vX4OGmbzsyQ== 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 4TKXBw6b8gz11lH; Wed, 24 Jan 2024 05:12:24 +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 40O5CO5N041330; Wed, 24 Jan 2024 05:12:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 40O5COYX041327; Wed, 24 Jan 2024 05:12:24 GMT (envelope-from git) Date: Wed, 24 Jan 2024 05:12:24 GMT Message-Id: <202401240512.40O5COYX041327@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 38bfddf597b1 - 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: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: 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: 38bfddf597b18615ad07accd923ce29a951eaab9 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=38bfddf597b18615ad07accd923ce29a951eaab9 commit 38bfddf597b18615ad07accd923ce29a951eaab9 Author: Konstantin Belousov AuthorDate: 2024-01-19 19:55:42 +0000 Commit: Konstantin Belousov CommitDate: 2024-01-24 05:11:27 +0000 regen --- 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 | 38 ++++++++++++++++++++++++++ sys/kern/init_sysent.c | 1 + sys/kern/syscalls.c | 1 + sys/kern/systrace_args.c | 38 ++++++++++++++++++++++++++ sys/sys/syscall.h | 3 +- sys/sys/syscall.mk | 3 +- sys/sys/sysproto.h | 9 ++++++ 10 files changed, 95 insertions(+), 3 deletions(-) diff --git a/sys/compat/freebsd32/freebsd32_syscall.h b/sys/compat/freebsd32/freebsd32_syscall.h index bc824b8e04be..662947c330d4 100644 --- a/sys/compat/freebsd32/freebsd32_syscall.h +++ b/sys/compat/freebsd32/freebsd32_syscall.h @@ -506,4 +506,5 @@ #define FREEBSD32_SYS_timerfd_create 585 #define FREEBSD32_SYS_freebsd32_timerfd_gettime 586 #define FREEBSD32_SYS_freebsd32_timerfd_settime 587 -#define FREEBSD32_SYS_MAXSYSCALL 588 +#define FREEBSD32_SYS_kcmp 588 +#define FREEBSD32_SYS_MAXSYSCALL 589 diff --git a/sys/compat/freebsd32/freebsd32_syscalls.c b/sys/compat/freebsd32/freebsd32_syscalls.c index 3e7656cace72..b4c41fdbbc12 100644 --- a/sys/compat/freebsd32/freebsd32_syscalls.c +++ b/sys/compat/freebsd32/freebsd32_syscalls.c @@ -593,4 +593,5 @@ const char *freebsd32_syscallnames[] = { "timerfd_create", /* 585 = timerfd_create */ "freebsd32_timerfd_gettime", /* 586 = freebsd32_timerfd_gettime */ "freebsd32_timerfd_settime", /* 587 = freebsd32_timerfd_settime */ + "kcmp", /* 588 = kcmp */ }; diff --git a/sys/compat/freebsd32/freebsd32_sysent.c b/sys/compat/freebsd32/freebsd32_sysent.c index 179d83186b41..13d80c695169 100644 --- a/sys/compat/freebsd32/freebsd32_sysent.c +++ b/sys/compat/freebsd32/freebsd32_sysent.c @@ -649,4 +649,5 @@ struct sysent freebsd32_sysent[] = { { .sy_narg = AS(timerfd_create_args), .sy_call = (sy_call_t *)sys_timerfd_create, .sy_auevent = AUE_TIMERFD, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 585 = timerfd_create */ { .sy_narg = AS(freebsd32_timerfd_gettime_args), .sy_call = (sy_call_t *)freebsd32_timerfd_gettime, .sy_auevent = AUE_TIMERFD, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 586 = freebsd32_timerfd_gettime */ { .sy_narg = AS(freebsd32_timerfd_settime_args), .sy_call = (sy_call_t *)freebsd32_timerfd_settime, .sy_auevent = AUE_TIMERFD, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 587 = freebsd32_timerfd_settime */ + { .sy_narg = AS(kcmp_args), .sy_call = (sy_call_t *)sys_kcmp, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 588 = kcmp */ }; diff --git a/sys/compat/freebsd32/freebsd32_systrace_args.c b/sys/compat/freebsd32/freebsd32_systrace_args.c index 0d263b57bf0f..f2617872a952 100644 --- a/sys/compat/freebsd32/freebsd32_systrace_args.c +++ b/sys/compat/freebsd32/freebsd32_systrace_args.c @@ -3357,6 +3357,17 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) *n_args = 4; break; } + /* kcmp */ + case 588: { + struct kcmp_args *p = params; + iarg[a++] = p->pid1; /* pid_t */ + iarg[a++] = p->pid2; /* pid_t */ + iarg[a++] = p->type; /* int */ + uarg[a++] = (intptr_t)p->idx1; /* uintptr_t */ + uarg[a++] = (intptr_t)p->idx2; /* uintptr_t */ + *n_args = 5; + break; + } default: *n_args = 0; break; @@ -9067,6 +9078,28 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* kcmp */ + case 588: + switch (ndx) { + case 0: + p = "pid_t"; + break; + case 1: + p = "pid_t"; + break; + case 2: + p = "int"; + break; + case 3: + p = "uintptr_t"; + break; + case 4: + p = "uintptr_t"; + break; + default: + break; + }; + break; default: break; }; @@ -10945,6 +10978,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* kcmp */ + case 588: + 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 74b96a27b3fa..467ea391ef23 100644 --- a/sys/kern/init_sysent.c +++ b/sys/kern/init_sysent.c @@ -648,4 +648,5 @@ struct sysent sysent[] = { { .sy_narg = AS(timerfd_create_args), .sy_call = (sy_call_t *)sys_timerfd_create, .sy_auevent = AUE_TIMERFD, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 585 = timerfd_create */ { .sy_narg = AS(timerfd_gettime_args), .sy_call = (sy_call_t *)sys_timerfd_gettime, .sy_auevent = AUE_TIMERFD, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 586 = timerfd_gettime */ { .sy_narg = AS(timerfd_settime_args), .sy_call = (sy_call_t *)sys_timerfd_settime, .sy_auevent = AUE_TIMERFD, .sy_flags = SYF_CAPENABLED, .sy_thrcnt = SY_THR_STATIC }, /* 587 = timerfd_settime */ + { .sy_narg = AS(kcmp_args), .sy_call = (sy_call_t *)sys_kcmp, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 588 = kcmp */ }; diff --git a/sys/kern/syscalls.c b/sys/kern/syscalls.c index 323669158ac4..0e6e3a3dd1f1 100644 --- a/sys/kern/syscalls.c +++ b/sys/kern/syscalls.c @@ -593,4 +593,5 @@ const char *syscallnames[] = { "timerfd_create", /* 585 = timerfd_create */ "timerfd_gettime", /* 586 = timerfd_gettime */ "timerfd_settime", /* 587 = timerfd_settime */ + "kcmp", /* 588 = kcmp */ }; diff --git a/sys/kern/systrace_args.c b/sys/kern/systrace_args.c index 5166223fe8c6..a7320cbe9377 100644 --- a/sys/kern/systrace_args.c +++ b/sys/kern/systrace_args.c @@ -3444,6 +3444,17 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) *n_args = 4; break; } + /* kcmp */ + case 588: { + struct kcmp_args *p = params; + iarg[a++] = p->pid1; /* pid_t */ + iarg[a++] = p->pid2; /* pid_t */ + iarg[a++] = p->type; /* int */ + uarg[a++] = (intptr_t)p->idx1; /* uintptr_t */ + uarg[a++] = (intptr_t)p->idx2; /* uintptr_t */ + *n_args = 5; + break; + } default: *n_args = 0; break; @@ -9212,6 +9223,28 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* kcmp */ + case 588: + switch (ndx) { + case 0: + p = "pid_t"; + break; + case 1: + p = "pid_t"; + break; + case 2: + p = "int"; + break; + case 3: + p = "uintptr_t"; + break; + case 4: + p = "uintptr_t"; + break; + default: + break; + }; + break; default: break; }; @@ -11180,6 +11213,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* kcmp */ + case 588: + if (ndx == 0 || ndx == 1) + p = "int"; + break; default: break; }; diff --git a/sys/sys/syscall.h b/sys/sys/syscall.h index cdc09a0edc29..1fa5878c6ff6 100644 --- a/sys/sys/syscall.h +++ b/sys/sys/syscall.h @@ -524,4 +524,5 @@ #define SYS_timerfd_create 585 #define SYS_timerfd_gettime 586 #define SYS_timerfd_settime 587 -#define SYS_MAXSYSCALL 588 +#define SYS_kcmp 588 +#define SYS_MAXSYSCALL 589 diff --git a/sys/sys/syscall.mk b/sys/sys/syscall.mk index 8c85dc4c349c..31e698ea2beb 100644 --- a/sys/sys/syscall.mk +++ b/sys/sys/syscall.mk @@ -427,4 +427,5 @@ MIASM = \ membarrier.o \ timerfd_create.o \ timerfd_gettime.o \ - timerfd_settime.o + timerfd_settime.o \ + kcmp.o diff --git a/sys/sys/sysproto.h b/sys/sys/sysproto.h index 803144745a76..afec9d186a7a 100644 --- a/sys/sys/sysproto.h +++ b/sys/sys/sysproto.h @@ -1870,6 +1870,13 @@ struct timerfd_settime_args { char new_value_l_[PADL_(const struct itimerspec *)]; const struct itimerspec * new_value; char new_value_r_[PADR_(const struct itimerspec *)]; char old_value_l_[PADL_(struct itimerspec *)]; struct itimerspec * old_value; char old_value_r_[PADR_(struct itimerspec *)]; }; +struct kcmp_args { + char pid1_l_[PADL_(pid_t)]; pid_t pid1; char pid1_r_[PADR_(pid_t)]; + char pid2_l_[PADL_(pid_t)]; pid_t pid2; char pid2_r_[PADR_(pid_t)]; + char type_l_[PADL_(int)]; int type; char type_r_[PADR_(int)]; + char idx1_l_[PADL_(uintptr_t)]; uintptr_t idx1; char idx1_r_[PADR_(uintptr_t)]; + char idx2_l_[PADL_(uintptr_t)]; uintptr_t idx2; char idx2_r_[PADR_(uintptr_t)]; +}; int sys_exit(struct thread *, struct exit_args *); int sys_fork(struct thread *, struct fork_args *); int sys_read(struct thread *, struct read_args *); @@ -2268,6 +2275,7 @@ int sys_membarrier(struct thread *, struct membarrier_args *); int sys_timerfd_create(struct thread *, struct timerfd_create_args *); int sys_timerfd_gettime(struct thread *, struct timerfd_gettime_args *); int sys_timerfd_settime(struct thread *, struct timerfd_settime_args *); +int sys_kcmp(struct thread *, struct kcmp_args *); #ifdef COMPAT_43 @@ -3246,6 +3254,7 @@ int freebsd13_swapoff(struct thread *, struct freebsd13_swapoff_args *); #define SYS_AUE_timerfd_create AUE_TIMERFD #define SYS_AUE_timerfd_gettime AUE_TIMERFD #define SYS_AUE_timerfd_settime AUE_TIMERFD +#define SYS_AUE_kcmp AUE_NULL #undef PAD_ #undef PADL_