All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] kernel: Expose SYS_kcmp by default
@ 2021-02-05 16:37 ` Chris Wilson
  0 siblings, 0 replies; 88+ messages in thread
From: Chris Wilson @ 2021-02-05 16:37 UTC (permalink / raw)
  To: linux-kernel
  Cc: dri-devel, intel-gfx, Chris Wilson, Kees Cook, Andy Lutomirski,
	Will Drewry, Andrew Morton, Dave Airlie, Daniel Vetter,
	Lucas Stach

Userspace has discovered the functionality offered by SYS_kcmp and has
started to depend upon it. In particular, Mesa uses SYS_kcmp for
os_same_file_description() in order to identify when two fd (e.g. device
or dmabuf) point to the same struct file. Since they depend on it for
core functionality, lift SYS_kcmp out of the non-default
CONFIG_CHECKPOINT_RESTORE into the selectable syscall category.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Kees Cook <keescook@chromium.org>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Will Drewry <wad@chromium.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Dave Airlie <airlied@gmail.com>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Lucas Stach <l.stach@pengutronix.de>
---
 init/Kconfig                                  | 11 +++++++++++
 kernel/Makefile                               |  2 +-
 tools/testing/selftests/seccomp/seccomp_bpf.c |  2 +-
 3 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/init/Kconfig b/init/Kconfig
index b77c60f8b963..f62fca13ac5b 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1194,6 +1194,7 @@ endif # NAMESPACES
 config CHECKPOINT_RESTORE
 	bool "Checkpoint/restore support"
 	select PROC_CHILDREN
+	select KCMP
 	default n
 	help
 	  Enables additional kernel features in a sake of checkpoint/restore.
@@ -1737,6 +1738,16 @@ config ARCH_HAS_MEMBARRIER_CALLBACKS
 config ARCH_HAS_MEMBARRIER_SYNC_CORE
 	bool
 
+config KCMP
+	bool "Enable kcmp() system call" if EXPERT
+	default y
+	help
+	  Enable the file descriptor comparison system call. It provides
+	  user-space with the ability to compare two fd to see if they
+	  point to the same file, and check other attributes.
+
+	  If unsure, say Y.
+
 config RSEQ
 	bool "Enable rseq() system call" if EXPERT
 	default y
diff --git a/kernel/Makefile b/kernel/Makefile
index aa7368c7eabf..320f1f3941b7 100644
--- a/kernel/Makefile
+++ b/kernel/Makefile
@@ -51,7 +51,7 @@ obj-y += livepatch/
 obj-y += dma/
 obj-y += entry/
 
-obj-$(CONFIG_CHECKPOINT_RESTORE) += kcmp.o
+obj-$(CONFIG_KCMP) += kcmp.o
 obj-$(CONFIG_FREEZER) += freezer.o
 obj-$(CONFIG_PROFILING) += profile.o
 obj-$(CONFIG_STACKTRACE) += stacktrace.o
diff --git a/tools/testing/selftests/seccomp/seccomp_bpf.c b/tools/testing/selftests/seccomp/seccomp_bpf.c
index 26c72f2b61b1..1b6c7d33c4ff 100644
--- a/tools/testing/selftests/seccomp/seccomp_bpf.c
+++ b/tools/testing/selftests/seccomp/seccomp_bpf.c
@@ -315,7 +315,7 @@ TEST(kcmp)
 	ret = __filecmp(getpid(), getpid(), 1, 1);
 	EXPECT_EQ(ret, 0);
 	if (ret != 0 && errno == ENOSYS)
-		SKIP(return, "Kernel does not support kcmp() (missing CONFIG_CHECKPOINT_RESTORE?)");
+		SKIP(return, "Kernel does not support kcmp() (missing CONFIG_KCMP?)");
 }
 
 TEST(mode_strict_support)
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 88+ messages in thread

end of thread, other threads:[~2021-02-16  9:05 UTC | newest]

Thread overview: 88+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-05 16:37 [PATCH] kernel: Expose SYS_kcmp by default Chris Wilson
2021-02-05 16:37 ` [Intel-gfx] " Chris Wilson
2021-02-05 16:37 ` Chris Wilson
2021-02-05 17:02 ` Lucas Stach
2021-02-05 17:02   ` [Intel-gfx] " Lucas Stach
2021-02-05 17:02   ` Lucas Stach
2021-02-05 18:37 ` Kees Cook
2021-02-05 18:37   ` [Intel-gfx] " Kees Cook
2021-02-05 18:37   ` Kees Cook
2021-02-05 20:53   ` Daniel Vetter
2021-02-05 20:53     ` [Intel-gfx] " Daniel Vetter
2021-02-05 20:53     ` Daniel Vetter
2021-02-08 11:49     ` Michel Dänzer
2021-02-08 11:49       ` [Intel-gfx] " Michel Dänzer
2021-02-08 11:49       ` Michel Dänzer
2021-02-08 13:11       ` Michel Dänzer
2021-02-08 13:11         ` [Intel-gfx] " Michel Dänzer
2021-02-08 13:11         ` Michel Dänzer
2021-02-08 13:34       ` Daniel Vetter
2021-02-08 13:34         ` [Intel-gfx] " Daniel Vetter
2021-02-08 13:34         ` Daniel Vetter
2021-02-08 13:49         ` Michel Dänzer
2021-02-08 13:49           ` [Intel-gfx] " Michel Dänzer
2021-02-08 13:49           ` Michel Dänzer
2021-02-05 19:25 ` kernel test robot
2021-02-05 19:25   ` kernel test robot
2021-02-05 19:25   ` [Intel-gfx] " kernel test robot
2021-02-05 19:25   ` kernel test robot
2021-02-05 19:46 ` kernel test robot
2021-02-05 19:46   ` kernel test robot
2021-02-05 19:46   ` [Intel-gfx] " kernel test robot
2021-02-05 19:46   ` kernel test robot
2021-02-05 21:06 ` [PATCH v2] " Chris Wilson
2021-02-05 21:06   ` [Intel-gfx] " Chris Wilson
2021-02-05 21:06   ` Chris Wilson
2021-02-05 21:16   ` Chris Wilson
2021-02-05 21:16     ` [Intel-gfx] " Chris Wilson
2021-02-05 21:16     ` Chris Wilson
2021-02-05 21:20     ` Kees Cook
2021-02-05 21:20       ` [Intel-gfx] " Kees Cook
2021-02-05 21:20       ` Kees Cook
2021-02-05 21:28       ` Chris Wilson
2021-02-05 21:28         ` [Intel-gfx] " Chris Wilson
2021-02-05 21:28         ` Chris Wilson
2021-02-05 21:48         ` Daniel Vetter
2021-02-05 21:48           ` [Intel-gfx] " Daniel Vetter
2021-02-05 21:48           ` Daniel Vetter
2021-02-05 21:47   ` Rasmus Villemoes
2021-02-05 21:47     ` [Intel-gfx] " Rasmus Villemoes
2021-02-05 21:47     ` Rasmus Villemoes
2021-02-05 22:00 ` [PATCH v3] kcmp: Support selection of SYS_kcmp without CHECKPOINT_RESTORE Chris Wilson
2021-02-05 22:00   ` [Intel-gfx] " Chris Wilson
2021-02-05 22:00   ` Chris Wilson
2021-02-06 12:47   ` Cyrill Gorcunov
2021-02-06 12:47     ` [Intel-gfx] " Cyrill Gorcunov
2021-02-06 12:47     ` Cyrill Gorcunov
2021-02-08 22:12   ` Kees Cook
2021-02-08 22:12     ` [Intel-gfx] " Kees Cook
2021-02-08 22:12     ` Kees Cook
2021-02-16  9:02     ` Daniel Vetter
2021-02-16  9:02       ` [Intel-gfx] " Daniel Vetter
2021-02-16  9:02       ` Daniel Vetter
2021-02-12 12:57   ` Emil Velikov
2021-02-12 12:57     ` [Intel-gfx] " Emil Velikov
2021-02-12 12:57     ` Emil Velikov
2021-02-12 13:14     ` Simon Ser
2021-02-12 13:14       ` [Intel-gfx] " Simon Ser
2021-02-12 13:14       ` Simon Ser
2021-02-12 14:07       ` Emil Velikov
2021-02-12 14:07         ` [Intel-gfx] " Emil Velikov
2021-02-12 14:07         ` Emil Velikov
2021-02-12 14:01     ` Michel Dänzer
2021-02-12 14:01       ` [Intel-gfx] " Michel Dänzer
2021-02-12 14:01       ` Michel Dänzer
2021-02-12 14:09       ` Emil Velikov
2021-02-12 14:09         ` [Intel-gfx] " Emil Velikov
2021-02-12 14:09         ` Emil Velikov
2021-02-15  8:56   ` Thomas Zimmermann
2021-02-15  8:56     ` [Intel-gfx] " Thomas Zimmermann
2021-02-15  8:56     ` Thomas Zimmermann
2021-02-06  2:01 ` [Intel-gfx] ✓ Fi.CI.BAT: success for kernel: Expose SYS_kcmp by default (rev3) Patchwork
2021-02-06 14:21 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2021-02-13 17:40 ` [PATCH] kernel: Expose SYS_kcmp by default Pavel Machek
2021-02-13 17:40   ` [Intel-gfx] " Pavel Machek
2021-02-13 17:40   ` Pavel Machek
2021-02-15 10:23   ` Lucas Stach
2021-02-15 10:23     ` [Intel-gfx] " Lucas Stach
2021-02-15 10:23     ` Lucas Stach

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.