From nobody Fri Dec 19 02:48:21 2025 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 4dXX5y2v8jz6KhD5 for ; Fri, 19 Dec 2025 02:48:22 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dXX5x6d3Fz3PKG for ; Fri, 19 Dec 2025 02:48:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1766112502; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RYgjbp/SvPQsv7d09f4qhwbV9jiYwjQO92D+/UMee8c=; b=ElUEs6iWcGQceRtsO8uMWWOUEFByCUYkoNrfLJ6M/vKtIEq1jujwfis0ouxmpg0G25E4VI gnv7pIKPAtCqhM0o0ONHlxruxRb4YNASfkQJXYmaAeZRd2YxLZWnpdXiS77LAwvovM4v5+ iB+WGhqOlDjxYucikZLzz7TYOvJ2MNy2lw2rGeRmS2zfXXTu3ZNXbGRJyhlDtUB6Oou+ua 35omL+MC/bPajxqSVAhZHz9w87NBhoRYf6wEF/ZAEsY8uYGu0SedgcO4AUmEfVn1UoDRli zKnXyp94bRWZEIAal/iVTF6M0ZMGb70bnRhAzKuOlEasgaudO3abHvAu4zpa/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1766112502; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RYgjbp/SvPQsv7d09f4qhwbV9jiYwjQO92D+/UMee8c=; b=gb3azIiKOKT4CdfSP3yzKmD5Ym5Jq9OMLyuuIIb7yxrOd3IRJ7oUrGsZN+yagrODoSn4As FvZt0Jdw53pp/WcSqQvURxo6+WKs9xdIeXp4X+vI4ifQKW/yCn7v4hSWKMtfjo6axUy+Qi LRTf98T50uaXUPwvYmSqksQC57bel4vbk8v33S6J6IU8wI9Jol5Jc+htwzNXTT5/lEJmMG ZwazqpYwSfTl6ZDPRKjS3zGpdx6pOugz1tCsk+ahikxZlC5EwebT1ZWBAVlt3jesK0klK4 nxdMMjQvSBzcbrvqXMFBwYFkVQzGBA1mXrRifw+tYU18+SwLAeHM7rCBWQUNLA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1766112502; a=rsa-sha256; cv=none; b=IpFbfGOtjg5vnFmMKDoQfON8ie+r1A+mmChBe4N97bHz5YsWi/rI+IWqQWJY/opv3MVgrm /cc/W5UPlAWCywMDzhvetWZEvZ0tjbeE4tpZyioudkWzvwpDlGiLsAfkyYQNVoWVI6R1i0 OdFOzutdBU8F5YlSnwmd5PgwJHX7bOGPVXahZab8jY6GAg+Hx7rw8G3isKD52Iqhl5D0MO khLZJ8HTkVY2nwbJ1oySumxoo81o65GidYdmhh/TlIApMWU5zsnO8v0du51n7UIihqb6gf LLn+aLzeYTOc+3k9o/Hg1HYE4uYlpDIQxaun8ur6uHZ5xFBOdrXlSRAItwwSTQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dXX5x59lRz150r for ; Fri, 19 Dec 2025 02:48:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3675e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 19 Dec 2025 02:48:21 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Ricardo Branco From: Ed Maste Subject: git: 97b7a753ecb5 - stable/15 - linux: Add support for kcmp(2) system call 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 97b7a753ecb5c85bad237c02ca390d7d7d5a0fde Auto-Submitted: auto-generated Date: Fri, 19 Dec 2025 02:48:21 +0000 Message-Id: <6944bcf5.3675e.602ac442@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=97b7a753ecb5c85bad237c02ca390d7d7d5a0fde commit 97b7a753ecb5c85bad237c02ca390d7d7d5a0fde Author: Ricardo Branco AuthorDate: 2025-12-08 21:27:07 +0000 Commit: Ed Maste CommitDate: 2025-12-19 02:47:50 +0000 linux: Add support for kcmp(2) system call Signed-off-by: Ricardo Branco PR: 281690 Reviewed by: kib Pull Request: https://github.com/freebsd/freebsd-src/pull/1920 (cherry picked from commit dbac191956f9b51069617b09fd0a24ca0e7bfc12) --- sys/compat/linux/linux_dummy.c | 2 -- sys/compat/linux/linux_misc.c | 27 +++++++++++++++++++++++++++ sys/compat/linux/linux_misc.h | 11 +++++++++++ 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/sys/compat/linux/linux_dummy.c b/sys/compat/linux/linux_dummy.c index 19cd55849f65..46f98f4da1eb 100644 --- a/sys/compat/linux/linux_dummy.c +++ b/sys/compat/linux/linux_dummy.c @@ -96,8 +96,6 @@ DUMMY(setns); /* Linux 3.2: */ DUMMY(process_vm_readv); DUMMY(process_vm_writev); -/* Linux 3.5: */ -DUMMY(kcmp); /* Linux 3.8: */ DUMMY(finit_module); DUMMY(sched_setattr); diff --git a/sys/compat/linux/linux_misc.c b/sys/compat/linux/linux_misc.c index 0925ffb64480..69fb9935a9ae 100644 --- a/sys/compat/linux/linux_misc.c +++ b/sys/compat/linux/linux_misc.c @@ -54,6 +54,7 @@ #include #include #include +#include #include #include @@ -3067,4 +3068,30 @@ linux_mq_getsetattr(struct thread *td, struct linux_mq_getsetattr_args *args) return (error); } +int +linux_kcmp(struct thread *td, struct linux_kcmp_args *args) +{ + int type; + + switch (args->type) { + case LINUX_KCMP_FILE: + type = KCMP_FILE; + break; + case LINUX_KCMP_FILES: + type = KCMP_FILES; + break; + case LINUX_KCMP_SIGHAND: + type = KCMP_SIGHAND; + break; + case LINUX_KCMP_VM: + type = KCMP_VM; + break; + default: + return (EINVAL); + } + + return (kern_kcmp(td, args->pid1, args->pid2, type, args->idx1, + args->idx)); +} + MODULE_DEPEND(linux, mqueuefs, 1, 1, 1); diff --git a/sys/compat/linux/linux_misc.h b/sys/compat/linux/linux_misc.h index 2d2b12ef0127..63ed914afc63 100644 --- a/sys/compat/linux/linux_misc.h +++ b/sys/compat/linux/linux_misc.h @@ -216,4 +216,15 @@ struct syscall_info { #define LINUX_IOPRIO_WHO_PGRP 2 #define LINUX_IOPRIO_WHO_USER 3 +/* Linux kcmp types from */ +#define LINUX_KCMP_FILE 0 +#define LINUX_KCMP_VM 1 +#define LINUX_KCMP_FILES 2 +#define LINUX_KCMP_FS 3 +#define LINUX_KCMP_SIGHAND 4 +#define LINUX_KCMP_IO 5 +#define LINUX_KCMP_SYSVSEM 6 +#define LINUX_KCMP_EPOLL_TFD 7 +#define LINUX_KCMP_TYPES 8 + #endif /* _LINUX_MISC_H_ */