userfaultfd: add minor fault registration mode
[linux-2.6-microblaze.git] / init / Kconfig
index 019c187..1413413 100644 (file)
@@ -1,13 +1,4 @@
 # SPDX-License-Identifier: GPL-2.0-only
-config DEFCONFIG_LIST
-       string
-       depends on !UML
-       option defconfig_list
-       default "/lib/modules/$(shell,uname -r)/.config"
-       default "/etc/kernel-config"
-       default "/boot/config-$(shell,uname -r)"
-       default "arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG)"
-
 config CC_VERSION_TEXT
        string
        default "$(CC_VERSION_TEXT)"
@@ -21,7 +12,7 @@ config CC_VERSION_TEXT
 
          - Ensure full rebuild when the compiler is updated
            include/linux/compiler-version.h contains this option in the comment
-           line so fixdep adds include/config/cc/version/text.h into the
+           line so fixdep adds include/config/CC_VERSION_TEXT into the
            auto-generated dependency. When the compiler is updated, syncconfig
            will touch it and then every file will be rebuilt.
 
@@ -1122,6 +1113,20 @@ config CGROUP_BPF
          BPF_CGROUP_INET_INGRESS will be executed on the ingress path of
          inet sockets.
 
+config CGROUP_MISC
+       bool "Misc resource controller"
+       default n
+       help
+         Provides a controller for miscellaneous resources on a host.
+
+         Miscellaneous scalar resources are the resources on the host system
+         which cannot be abstracted like the other cgroups. This controller
+         tracks and limits the miscellaneous resources used by a process
+         attached to a cgroup hierarchy.
+
+         For more information, please check misc cgroup section in
+         /Documentation/admin-guide/cgroup-v2.rst.
+
 config CGROUP_DEBUG
        bool "Debug controller"
        default n
@@ -1639,6 +1644,11 @@ config HAVE_ARCH_USERFAULTFD_WP
        help
          Arch has userfaultfd write protection support
 
+config HAVE_ARCH_USERFAULTFD_MINOR
+       bool
+       help
+         Arch has userfaultfd minor fault support
+
 config MEMBARRIER
        bool "Enable membarrier() system call" if EXPERT
        default y
@@ -1720,6 +1730,8 @@ config BPF_SYSCALL
        select BPF
        select IRQ_WORK
        select TASKS_TRACE_RCU
+       select BINARY_PRINTF
+       select NET_SOCK_MSG if INET
        default n
        help
          Enable the bpf() system call that allows to manipulate eBPF
@@ -1789,7 +1801,6 @@ config DEBUG_RSEQ
 
 config EMBEDDED
        bool "Embedded system"
-       option allnoconfig_y
        select EXPERT
        help
          This option should be enabled if compiling the kernel for
@@ -2064,7 +2075,7 @@ config MODULE_SIG_FORMAT
 
 menuconfig MODULES
        bool "Enable loadable module support"
-       option modules
+       modules
        help
          Kernel modules are small pieces of compiled code which can
          be inserted in the running kernel, rather than being
@@ -2225,40 +2236,53 @@ config MODULE_SIG_HASH
        default "sha384" if MODULE_SIG_SHA384
        default "sha512" if MODULE_SIG_SHA512
 
-config MODULE_COMPRESS
-       bool "Compress modules on installation"
+choice
+       prompt "Module compression mode"
        help
+         This option allows you to choose the algorithm which will be used to
+         compress modules when 'make modules_install' is run. (or, you can
+         choose to not compress modules at all.)
 
-         Compresses kernel modules when 'make modules_install' is run; gzip or
-         xz depending on "Compression algorithm" below.
+         External modules will also be compressed in the same way during the
+         installation.
 
-         module-init-tools MAY support gzip, and kmod MAY support gzip and xz.
+         For modules inside an initrd or initramfs, it's more efficient to
+         compress the whole initrd or initramfs instead.
 
-         Out-of-tree kernel modules installed using Kbuild will also be
-         compressed upon installation.
+         This is fully compatible with signed modules.
 
-         Note: for modules inside an initrd or initramfs, it's more efficient
-         to compress the whole initrd or initramfs instead.
+         Please note that the tool used to load modules needs to support the
+         corresponding algorithm. module-init-tools MAY support gzip, and kmod
+         MAY support gzip, xz and zstd.
 
-         Note: This is fully compatible with signed modules.
+         Your build system needs to provide the appropriate compression tool
+         to compress the modules.
 
-         If in doubt, say N.
+         If in doubt, select 'None'.
 
-choice
-       prompt "Compression algorithm"
-       depends on MODULE_COMPRESS
-       default MODULE_COMPRESS_GZIP
+config MODULE_COMPRESS_NONE
+       bool "None"
        help
-         This determines which sort of compression will be used during
-         'make modules_install'.
-
-         GZIP (default) and XZ are supported.
+         Do not compress modules. The installed modules are suffixed
+         with .ko.
 
 config MODULE_COMPRESS_GZIP
        bool "GZIP"
+       help
+         Compress modules with GZIP. The installed modules are suffixed
+         with .ko.gz.
 
 config MODULE_COMPRESS_XZ
        bool "XZ"
+       help
+         Compress modules with XZ. The installed modules are suffixed
+         with .ko.xz.
+
+config MODULE_COMPRESS_ZSTD
+       bool "ZSTD"
+       help
+         Compress modules with ZSTD. The installed modules are suffixed
+         with .ko.zst.
 
 endchoice
 
@@ -2308,7 +2332,7 @@ endif # MODULES
 
 config MODULES_TREE_LOOKUP
        def_bool y
-       depends on PERF_EVENTS || TRACING
+       depends on PERF_EVENTS || TRACING || CFI_CLANG
 
 config INIT_ALL_POSSIBLE
        bool