build: use SPDX license tags
[openwrt/staging/mkresin.git] / config / Config-kernel.in
index 2e80c8f5371372fc3874e5cf3d29959e5bfab598..f71114b5daa8749aa78b2fcf13270e486170d1e2 100644 (file)
@@ -1,8 +1,6 @@
-# Copyright (C) 2006-2014 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
+# SPDX-License-Identifier: GPL-2.0-only
 #
+# Copyright (C) 2006-2014 OpenWrt.org
 
 config KERNEL_BUILD_USER
        string "Custom Kernel Build User Name"
@@ -35,6 +33,10 @@ config KERNEL_SWAP
        bool "Support for paging of anonymous memory (swap)"
        default y if !SMALL_FLASH
 
+config KERNEL_PROC_STRIPPED
+       bool "Strip non-essential /proc functionality to reduce code size"
+       default y if SMALL_FLASH
+
 config KERNEL_DEBUG_FS
        bool "Compile the kernel with debug filesystem enabled"
        default y
@@ -44,15 +46,9 @@ config KERNEL_DEBUG_FS
          write to these files. Many common debugging facilities, such as
          ftrace, require the existence of debugfs.
 
-# remove KERNEL_MIPS_FPU_EMULATOR after kernel 4.14 and 4.14 are gone
-config KERNEL_MIPS_FPU_EMULATOR
-       bool "Compile the kernel with MIPS FPU Emulator"
-       default y if TARGET_pistachio
-       depends on (mips || mipsel || mips64 || mips64el)
-
 config KERNEL_MIPS_FP_SUPPORT
        bool
-       default y if KERNEL_MIPS_FPU_EMULATOR
+       default y if TARGET_pistachio
 
 config KERNEL_ARM_PMU
        bool
@@ -272,6 +268,40 @@ config KERNEL_FUNCTION_PROFILER
        depends on KERNEL_FUNCTION_TRACER
        default n
 
+config KERNEL_IRQSOFF_TRACER
+       bool "Interrupts-off Latency Tracer"
+       depends on KERNEL_FTRACE
+       help
+         This option measures the time spent in irqs-off critical
+         sections, with microsecond accuracy.
+
+         The default measurement method is a maximum search, which is
+         disabled by default and can be runtime (re-)started
+         via:
+
+             echo 0 > /sys/kernel/debug/tracing/tracing_max_latency
+
+         (Note that kernel size and overhead increase with this option
+         enabled. This option and the preempt-off timing option can be
+         used together or separately.)
+
+config KERNEL_PREEMPT_TRACER
+       bool "Preemption-off Latency Tracer"
+       depends on KERNEL_FTRACE
+       help
+         This option measures the time spent in preemption-off critical
+         sections, with microsecond accuracy.
+
+         The default measurement method is a maximum search, which is
+         disabled by default and can be runtime (re-)started
+         via:
+
+             echo 0 > /sys/kernel/debug/tracing/tracing_max_latency
+
+         (Note that kernel size and overhead increase with this option
+         enabled. This option and the irqs-off timing option can be
+         used together or separately.)
+
 config KERNEL_DEBUG_KERNEL
        bool
        default n
@@ -333,10 +363,6 @@ config KERNEL_KPROBES
          instrumentation and testing.
          If in doubt, say "N".
 
-config KERNEL_KPROBE_EVENT
-       bool
-       default y if KERNEL_KPROBES
-
 config KERNEL_KPROBE_EVENTS
        bool
        default y if KERNEL_KPROBES
@@ -345,6 +371,10 @@ config KERNEL_AIO
        bool "Compile the kernel with asynchronous IO support"
        default y if !SMALL_FLASH
 
+config KERNEL_IO_URING
+       bool "Compile the kernel with io_uring support"
+       default y if !SMALL_FLASH
+
 config KERNEL_FHANDLE
        bool "Compile the kernel with support for fhandle syscalls"
        default y if !SMALL_FLASH
@@ -537,23 +567,23 @@ if KERNEL_DEVTMPFS
 endif
 
 config KERNEL_KEYS
-    bool "Enable kernel access key retention support"
-    default n
+       bool "Enable kernel access key retention support"
+       default !SMALL_FLASH
 
 config KERNEL_PERSISTENT_KEYRINGS
-    bool "Enable kernel persistent keyrings"
-    depends on KERNEL_KEYS
-    default n
+       bool "Enable kernel persistent keyrings"
+       depends on KERNEL_KEYS
+       default n
 
-config KERNEL_BIG_KEYS
-    bool "Enable large payload keys on kernel keyrings"
-    depends on KERNEL_KEYS
-    default n
+config KERNEL_KEYS_REQUEST_CACHE
+       bool "Enable temporary caching of the last request_key() result"
+       depends on KERNEL_KEYS
+       default n
 
-config KERNEL_ENCRYPTED_KEYS
-    tristate "Enable keys with encrypted payloads on kernel keyrings"
-    depends on KERNEL_KEYS
-    default n
+config KERNEL_BIG_KEYS
+       bool "Enable large payload keys on kernel keyrings"
+       depends on KERNEL_KEYS
+       default n
 
 #
 # CGROUP support symbols
@@ -596,8 +626,8 @@ if KERNEL_CGROUPS
 
        config KERNEL_CGROUP_HUGETLB
                bool "HugeTLB controller"
-               default y if KERNEL_HUGETLB_PAGE
-               depends on KERNEL_HUGETLB_PAGE
+               default n
+               select KERNEL_HUGETLB_PAGE
 
        config KERNEL_CGROUP_PIDS
                bool "PIDs cgroup subsystem"
@@ -616,7 +646,7 @@ if KERNEL_CGROUPS
 
        config KERNEL_CPUSETS
                bool "Cpuset support"
-               default y if !SMALL_FLASH
+               default y
                help
                  This option will let you create and manage CPUSETs which
                  allow dynamically partitioning a system into sets of CPUs and
@@ -630,14 +660,14 @@ if KERNEL_CGROUPS
 
        config KERNEL_CGROUP_CPUACCT
                bool "Simple CPU accounting cgroup subsystem"
-               default y if !SMALL_FLASH
+               default y
                help
                  Provides a simple Resource Controller for monitoring the
                  total CPU consumed by the tasks in a cgroup.
 
        config KERNEL_RESOURCE_COUNTERS
                bool "Resource counters"
-               default y if !SMALL_FLASH
+               default y
                help
                  This option enables controller independent resource accounting
                  infrastructure that works with cgroups.
@@ -648,7 +678,7 @@ if KERNEL_CGROUPS
 
        config KERNEL_MEMCG
                bool "Memory Resource Controller for Control Groups"
-               default y if !SMALL_FLASH
+               default y
                select KERNEL_FREEZER
                depends on KERNEL_RESOURCE_COUNTERS || !LINUX_3_18
                help
@@ -672,7 +702,7 @@ if KERNEL_CGROUPS
 
        config KERNEL_MEMCG_SWAP
                bool "Memory Resource Controller Swap Extension"
-               default y if !SMALL_FLASH
+               default y
                depends on KERNEL_MEMCG
                help
                  Add swap management feature to memory resource controller. When you
@@ -707,7 +737,7 @@ if KERNEL_CGROUPS
 
        config KERNEL_MEMCG_KMEM
                bool "Memory Resource Controller Kernel Memory accounting (EXPERIMENTAL)"
-               default y if !SMALL_FLASH
+               default y
                depends on KERNEL_MEMCG
                help
                  The Kernel Memory extension for Memory Resource Controller can limit
@@ -728,7 +758,7 @@ if KERNEL_CGROUPS
 
        menuconfig KERNEL_CGROUP_SCHED
                bool "Group CPU scheduler"
-               default y if !SMALL_FLASH
+               default y
                help
                  This feature lets CPU scheduler recognize task groups and control CPU
                  bandwidth allocation to such task groups. It uses cgroups to group
@@ -738,11 +768,11 @@ if KERNEL_CGROUPS
 
                config KERNEL_FAIR_GROUP_SCHED
                        bool "Group scheduling for SCHED_OTHER"
-                       default y if !SMALL_FLASH
+                       default y
 
                config KERNEL_CFS_BANDWIDTH
                        bool "CPU bandwidth provisioning for FAIR_GROUP_SCHED"
-                       default n
+                       default y
                        depends on KERNEL_FAIR_GROUP_SCHED
                        help
                          This option allows users to define CPU bandwidth rates (limits) for
@@ -753,7 +783,7 @@ if KERNEL_CGROUPS
 
                config KERNEL_RT_GROUP_SCHED
                        bool "Group scheduling for SCHED_RR/FIFO"
-                       default y if !SMALL_FLASH
+                       default y
                        help
                          This feature lets you explicitly allocate real CPU bandwidth
                          to task groups. If enabled, it will also make it impossible to
@@ -788,7 +818,7 @@ if KERNEL_CGROUPS
 
                config KERNEL_BLK_DEV_THROTTLING
                        bool "Enable throttling policy"
-                       default y if TARGET_bcm27xx
+                       default y
 
                config KERNEL_BLK_DEV_THROTTLING_LOW
                        bool "Block throttling .low limit interface support (EXPERIMENTAL)"
@@ -938,6 +968,15 @@ if KERNEL_IPV6
        config KERNEL_IPV6_PIMSM_V2
                def_bool n
 
+       config KERNEL_IPV6_SEG6_LWTUNNEL
+               bool "Enable support for lightweight tunnels"
+               default y if !SMALL_FLASH
+               help
+                 Using lwtunnel (needed for IPv6 segment routing) requires ip-full package.
+
+       config KERNEL_LWTUNNEL_BPF
+               def_bool n
+
 endif
 
 #
@@ -1081,6 +1120,9 @@ config KERNEL_SQUASHFS_FRAGMENT_CACHE_SIZE
        default 2 if (SMALL_FLASH && !LOW_MEMORY_FOOTPRINT)
        default 3
 
+config KERNEL_SQUASHFS_XATTR
+       bool "Squashfs XATTR support"
+
 #
 # compile optimiziation setting
 #
@@ -1102,3 +1144,59 @@ config KERNEL_CC_OPTIMIZE_FOR_SIZE
          your compiler resulting in a smaller kernel.
 
 endchoice
+
+config KERNEL_AUDIT
+       bool "Auditing support"
+
+config KERNEL_SECURITY
+       bool "Enable different security models"
+
+config KERNEL_SECURITY_NETWORK
+       bool "Socket and Networking Security Hooks"
+       select KERNEL_SECURITY
+
+config KERNEL_SECURITY_SELINUX
+       bool "NSA SELinux Support"
+       select KERNEL_SECURITY_NETWORK
+       select KERNEL_AUDIT
+
+config KERNEL_SECURITY_SELINUX_BOOTPARAM
+       bool "NSA SELinux boot parameter"
+       depends on KERNEL_SECURITY_SELINUX
+       default y
+
+config KERNEL_SECURITY_SELINUX_DISABLE
+       bool "NSA SELinux runtime disable"
+       depends on KERNEL_SECURITY_SELINUX
+
+config KERNEL_SECURITY_SELINUX_DEVELOP
+       bool "NSA SELinux Development Support"
+       depends on KERNEL_SECURITY_SELINUX
+       default y
+
+config KERNEL_SECURITY_SELINUX_SIDTAB_HASH_BITS
+       int
+       depends on KERNEL_SECURITY_SELINUX
+       default 9
+
+config KERNEL_SECURITY_SELINUX_SID2STR_CACHE_SIZE
+       int
+       depends on KERNEL_SECURITY_SELINUX
+       default 256
+
+config KERNEL_LSM
+       string
+       default "lockdown,yama,loadpin,safesetid,integrity,selinux"
+       depends on KERNEL_SECURITY_SELINUX
+
+config KERNEL_EXT4_FS_SECURITY
+       bool "Ext4 Security Labels"
+
+config KERNEL_F2FS_FS_SECURITY
+       bool "F2FS Security Labels"
+
+config KERNEL_UBIFS_FS_SECURITY
+       bool "UBIFS Security Labels"
+
+config KERNEL_JFFS2_FS_SECURITY
+       bool "JFFS2 Security Labels"