ath25: fix duplicate LZMA compression
[openwrt/openwrt.git] / config / Config-kernel.in
index dd83cf9e7c051e9efb633a2b036ab306f2cd754f..b9aaac50f72749d81116b3780aa69a57373f060c 100644 (file)
@@ -4,13 +4,29 @@
 # See /LICENSE for more information.
 #
 
 # See /LICENSE for more information.
 #
 
+config KERNEL_BUILD_USER
+       string "Custom Kernel Build User Name"
+       default ""
+       help
+         Sets the Kernel build user string, which for example will be returned
+         by 'uname -a' on running systems.
+         If not set, uses system user at build time.
+
+config KERNEL_BUILD_DOMAIN
+       string "Custom Kernel Build Domain Name"
+       default ""
+       help
+         Sets the Kernel build domain string, which for example will be
+         returned by 'uname -a' on running systems.
+         If not set, uses system hostname at build time.
+
 config KERNEL_PRINTK
        bool "Enable support for printk"
        default y
 
 config KERNEL_CRASHLOG
        bool "Crash logging"
 config KERNEL_PRINTK
        bool "Enable support for printk"
        default y
 
 config KERNEL_CRASHLOG
        bool "Crash logging"
-       depends on !(arm || powerpc || sparc)
+       depends on !(arm || powerpc || sparc || TARGET_uml)
        default y
 
 config KERNEL_SWAP
        default y
 
 config KERNEL_SWAP
@@ -18,16 +34,23 @@ config KERNEL_SWAP
        default y
 
 config KERNEL_DEBUG_FS
        default y
 
 config KERNEL_DEBUG_FS
-       bool "Compile the kernel with Debug FileSystem enabled"
+       bool "Compile the kernel with debug filesystem enabled"
        default y
        help
          debugfs is a virtual file system that kernel developers use to put
          debugging files into. Enable this option to be able to read and
        default y
        help
          debugfs is a virtual file system that kernel developers use to put
          debugging files into. Enable this option to be able to read and
-         write to these files.
+         write to these files. Many common debugging facilities, such as
+         ftrace, require the existence of debugfs.
+
+config KERNEL_ARM_PMU
+       bool
+       default n
+       depends on (arm || arm64)
 
 config KERNEL_PERF_EVENTS
        bool
        default n
 
 config KERNEL_PERF_EVENTS
        bool
        default n
+       select KERNEL_ARM_PMU if (arm || arm64)
 
 config KERNEL_PROFILING
        bool "Compile the kernel with profiling enabled"
 
 config KERNEL_PROFILING
        bool "Compile the kernel with profiling enabled"
@@ -39,12 +62,13 @@ config KERNEL_PROFILING
 
 config KERNEL_KALLSYMS
        bool "Compile the kernel with symbol table information"
 
 config KERNEL_KALLSYMS
        bool "Compile the kernel with symbol table information"
-       default y
+       default y if !SMALL_FLASH
        help
        help
-         This will give you more information in stack traces from kernel oopses
+         This will give you more information in stack traces from kernel oopses.
 
 config KERNEL_FTRACE
        bool "Compile the kernel with tracing support"
 
 config KERNEL_FTRACE
        bool "Compile the kernel with tracing support"
+       depends on !TARGET_uml
        default n
 
 config KERNEL_FTRACE_SYSCALLS
        default n
 
 config KERNEL_FTRACE_SYSCALLS
@@ -57,6 +81,26 @@ config KERNEL_ENABLE_DEFAULT_TRACERS
        depends on KERNEL_FTRACE
        default n
 
        depends on KERNEL_FTRACE
        default n
 
+config KERNEL_FUNCTION_TRACER
+       bool "Function tracer"
+       depends on KERNEL_FTRACE
+       default n
+
+config KERNEL_FUNCTION_GRAPH_TRACER
+       bool "Function graph tracer"
+       depends on KERNEL_FUNCTION_TRACER
+       default n
+
+config KERNEL_DYNAMIC_FTRACE
+       bool "Enable/disable function tracing dynamically"
+       depends on KERNEL_FUNCTION_TRACER
+       default n
+
+config KERNEL_FUNCTION_PROFILER
+       bool "Function profiler"
+       depends on KERNEL_FUNCTION_TRACER
+       default n
+
 config KERNEL_DEBUG_KERNEL
        bool
        default n
 config KERNEL_DEBUG_KERNEL
        bool
        default n
@@ -79,9 +123,9 @@ config KERNEL_DEBUG_LL
        depends on arm
        select KERNEL_DEBUG_LL_UART_NONE
        help
        depends on arm
        select KERNEL_DEBUG_LL_UART_NONE
        help
-         ARM low level debugging
+         ARM low level debugging.
 
 
-config KERNEL_DYNAMIC_DEBUG 
+config KERNEL_DYNAMIC_DEBUG
        bool "Compile the kernel with dynamic printk"
        select KERNEL_DEBUG_FS
        default n
        bool "Compile the kernel with dynamic printk"
        select KERNEL_DEBUG_FS
        default n
@@ -95,16 +139,33 @@ config KERNEL_DYNAMIC_DEBUG
 
 config KERNEL_EARLY_PRINTK
        bool "Compile the kernel with early printk"
 
 config KERNEL_EARLY_PRINTK
        bool "Compile the kernel with early printk"
+       default y if TARGET_bcm53xx
        default n
        depends on arm
        select KERNEL_DEBUG_KERNEL
        select KERNEL_DEBUG_LL if arm
        help
        default n
        depends on arm
        select KERNEL_DEBUG_KERNEL
        select KERNEL_DEBUG_LL if arm
        help
-         Compile the kernel with early printk support.
-         This is only useful for debugging purposes to send messages
-         over the serial console in early boot.
+         Compile the kernel with early printk support.  This is only useful for
+         debugging purposes to send messages over the serial console in early boot.
          Enable this to debug early boot problems.
 
          Enable this to debug early boot problems.
 
+config KERNEL_KPROBES
+       bool "Compile the kernel with kprobes support"
+       default n
+       select KERNEL_FTRACE
+       select KERNEL_PERF_EVENTS
+       help
+         Compiles the kernel with KPROBES support, which allows you to trap
+         at almost any kernel address and execute a callback function.
+         register_kprobe() establishes a probepoint and specifies the
+         callback. Kprobes is useful for kernel debugging, non-intrusive
+         instrumentation and testing.
+         If in doubt, say "N".
+
+config KERNEL_KPROBE_EVENT
+       bool
+       default y if KERNEL_KPROBES
+
 config KERNEL_AIO
        bool "Compile the kernel with asynchronous IO support"
        default n
 config KERNEL_AIO
        bool "Compile the kernel with asynchronous IO support"
        default n
@@ -113,6 +174,18 @@ config KERNEL_DIRECT_IO
        bool "Compile the kernel with direct IO support"
        default n
 
        bool "Compile the kernel with direct IO support"
        default n
 
+config KERNEL_FHANDLE
+       bool "Compile the kernel with support for fhandle syscalls"
+       default n
+
+config KERNEL_FANOTIFY
+       bool "Compile the kernel with modern file notification support"
+       default n
+
+config KERNEL_BLK_DEV_BSG
+       bool "Compile the kernel with SCSI generic v4 support for any block device"
+       default n
+
 config KERNEL_MAGIC_SYSRQ
        bool "Compile the kernel with SysRq support"
        default y
 config KERNEL_MAGIC_SYSRQ
        bool "Compile the kernel with SysRq support"
        default y
@@ -134,6 +207,20 @@ config KERNEL_PRINTK_TIME
        bool "Enable printk timestamps"
        default y
 
        bool "Enable printk timestamps"
        default y
 
+config KERNEL_SLUB_DEBUG
+       bool
+
+config KERNEL_SLUB_DEBUG_ON
+       bool
+
+config KERNEL_SLABINFO
+       select KERNEL_SLUB_DEBUG
+       select KERNEL_SLUB_DEBUG_ON
+       bool "Enable /proc slab debug info"
+
+config KERNEL_PROC_PAGE_MONITOR
+       bool "Enable /proc page monitoring"
+
 config KERNEL_RELAY
        bool
 
 config KERNEL_RELAY
        bool
 
@@ -148,6 +235,22 @@ config USE_SPARSE
        bool "Enable sparse check during kernel build"
        default n
 
        bool "Enable sparse check during kernel build"
        default n
 
+config KERNEL_DEVTMPFS
+       bool "Compile the kernel with device tmpfs enabled"
+       default n
+       help
+         devtmpfs is a simple, kernel-managed /dev filesystem. The kernel creates
+         devices nodes for all registered devices ti simplify boot, but leaves more
+         complex tasks to userspace (e.g. udev).
+
+if KERNEL_DEVTMPFS
+
+       config KERNEL_DEVTMPFS_MOUNT
+               bool "Automatically mount devtmpfs after root filesystem is mounted"
+               default n
+
+endif
+
 #
 # CGROUP support symbols
 #
 #
 # CGROUP support symbols
 #
@@ -172,7 +275,7 @@ if KERNEL_CGROUPS
 
        config KERNEL_CGROUP_FREEZER
                bool "Freezer cgroup subsystem"
 
        config KERNEL_CGROUP_FREEZER
                bool "Freezer cgroup subsystem"
-               default n
+               default y
                help
                  Provides a way to freeze and unfreeze all tasks in a
                  cgroup.
                help
                  Provides a way to freeze and unfreeze all tasks in a
                  cgroup.
@@ -184,6 +287,13 @@ if KERNEL_CGROUPS
                  Provides a cgroup implementing whitelists for devices which
                  a process in the cgroup can mknod or open.
 
                  Provides a cgroup implementing whitelists for devices which
                  a process in the cgroup can mknod or open.
 
+       config KERNEL_CGROUP_PIDS
+               bool "PIDs cgroup subsystem"
+               default y
+               help
+                 Provides enforcement of process number limits in the scope of a
+                 cgroup.
+
        config KERNEL_CPUSETS
                bool "Cpuset support"
                default n
        config KERNEL_CPUSETS
                bool "Cpuset support"
                default n
@@ -219,7 +329,7 @@ if KERNEL_CGROUPS
        config KERNEL_MEMCG
                bool "Memory Resource Controller for Control Groups"
                default n
        config KERNEL_MEMCG
                bool "Memory Resource Controller for Control Groups"
                default n
-               depends on KERNEL_RESOURCE_COUNTERS
+               depends on KERNEL_RESOURCE_COUNTERS || !LINUX_3_18
                help
                  Provides a memory resource controller that manages both anonymous
                  memory and page cache. (See Documentation/cgroups/memory.txt)
                help
                  Provides a memory resource controller that manages both anonymous
                  memory and page cache. (See Documentation/cgroups/memory.txt)
@@ -230,11 +340,11 @@ if KERNEL_CGROUPS
                  usage tracking struct at boot. Total amount of this is printed out
                  at boot.
 
                  usage tracking struct at boot. Total amount of this is printed out
                  at boot.
 
-                 Only enable when you're ok with these trade offs and really
+                 Only enable when you're ok with these tradeoffs and really
                  sure you need the memory resource controller. Even when you enable
                  this, you can set "cgroup_disable=memory" at your boot option to
                  sure you need the memory resource controller. Even when you enable
                  this, you can set "cgroup_disable=memory" at your boot option to
-                 disable memory resource controller and you can avoid overheads.
-                 (and lose benefits of memory resource controller)
+                 disable memory resource controller and you can avoid overheads
+                 (but lose benefits of memory resource controller).
 
                  This config option also selects MM_OWNER config option, which
                  could in turn add some fork/exit overhead.
 
                  This config option also selects MM_OWNER config option, which
                  could in turn add some fork/exit overhead.
@@ -268,8 +378,9 @@ if KERNEL_CGROUPS
                  which want to enable the feature but keep it disabled by default
                  and let the user enable it by swapaccount boot command line
                  parameter should have this option unselected.
                  which want to enable the feature but keep it disabled by default
                  and let the user enable it by swapaccount boot command line
                  parameter should have this option unselected.
-                 For those who want to have the feature enabled by default should
-                 select this option (if, for some reason, they need to disable it
+
+                 Those who want to have the feature enabled by default should
+                 select this option (if, for some reason, they need to disable it,
                  then swapaccount=0 does the trick).
 
 
                  then swapaccount=0 does the trick).
 
 
@@ -285,12 +396,9 @@ if KERNEL_CGROUPS
                  the kmem extension can use it to guarantee that no group of processes
                  will ever exhaust kernel resources alone.
 
                  the kmem extension can use it to guarantee that no group of processes
                  will ever exhaust kernel resources alone.
 
-       config KERNEL_PERF_EVENTS
-               bool
-               default y if KERNEL_CGROUP_PERF
-
        config KERNEL_CGROUP_PERF
                bool "Enable perf_event per-cpu per-container group (cgroup) monitoring"
        config KERNEL_CGROUP_PERF
                bool "Enable perf_event per-cpu per-container group (cgroup) monitoring"
+               select KERNEL_PERF_EVENTS
                default n
                help
                  This option extends the per-cpu mode to restrict monitoring to
                default n
                help
                  This option extends the per-cpu mode to restrict monitoring to
@@ -384,14 +492,14 @@ if KERNEL_NAMESPACES
                bool "UTS namespace"
                default y
                help
                bool "UTS namespace"
                default y
                help
-                 In this namespace tasks see different info provided
-                 with the uname() system call
+                 In this namespace, tasks see different info provided
+                 with the uname() system call.
 
        config KERNEL_IPC_NS
                bool "IPC namespace"
                default y
                help
 
        config KERNEL_IPC_NS
                bool "IPC namespace"
                default y
                help
-                 In this namespace tasks work with IPC ids which correspond to
+                 In this namespace, tasks work with IPC ids which correspond to
                  different IPC objects in different namespaces.
 
        config KERNEL_USER_NS
                  different IPC objects in different namespaces.
 
        config KERNEL_USER_NS
@@ -453,3 +561,160 @@ if KERNEL_LXC_MISC
                  operations on message queues.
 
 endif
                  operations on message queues.
 
 endif
+
+config KERNEL_SECCOMP_FILTER
+       bool
+       default n
+
+config KERNEL_SECCOMP
+       bool "Enable seccomp support"
+               depends on !(TARGET_uml)
+               select KERNEL_SECCOMP_FILTER
+               default n
+               help
+                 Build kernel with support for seccomp.
+
+#
+# IPv6 configuration
+#
+
+config KERNEL_IPV6
+       def_bool IPV6
+
+if KERNEL_IPV6
+
+       config KERNEL_IPV6_MULTIPLE_TABLES
+               def_bool y
+
+       config KERNEL_IPV6_SUBTREES
+               def_bool y
+
+       config KERNEL_IPV6_MROUTE
+               def_bool y
+
+       config KERNEL_IPV6_PIMSM_V2
+               def_bool n
+
+endif
+
+#
+# NFS related symbols
+#
+config KERNEL_IP_PNP
+       bool "Compile the kernel with rootfs on NFS"
+       help
+          If you want to make your kernel boot off a NFS server as root
+          filesystem, select Y here.
+
+if KERNEL_IP_PNP
+
+       config KERNEL_IP_PNP_DHCP
+               def_bool y
+
+       config KERNEL_IP_PNP_BOOTP
+               def_bool n
+
+       config KERNEL_IP_PNP_RARP
+               def_bool n
+
+       config KERNEL_NFS_FS
+               def_bool y
+
+       config KERNEL_NFS_V2
+               def_bool y
+
+       config KERNEL_NFS_V3
+               def_bool y
+
+       config KERNEL_ROOT_NFS
+               def_bool y
+
+endif
+
+menu "Filesystem ACL and attr support options"
+       config USE_FS_ACL_ATTR
+               bool "Use filesystem ACL and attr support by default"
+               default n
+               help
+                 Make using ACLs (e.g. POSIX ACL, NFSv4 ACL) the default
+                 for kernel and packages, except tmpfs, flash filesystems,
+                 and old NFS.  Also enable userspace extended attribute support
+                 by default.  (OpenWrt already has an expection it will be
+                 present in the kernel).
+
+       config KERNEL_FS_POSIX_ACL
+               bool "Enable POSIX ACL support"
+               default y if USE_FS_ACL_ATTR
+
+       config KERNEL_BTRFS_FS_POSIX_ACL
+               bool "Enable POSIX ACL for BtrFS Filesystems"
+               select KERNEL_FS_POSIX_ACL
+               default y if USE_FS_ACL_ATTR
+
+       config KERNEL_EXT4_FS_POSIX_ACL
+               bool "Enable POSIX ACL for Ext4 Filesystems"
+               select KERNEL_FS_POSIX_ACL
+               default y if USE_FS_ACL_ATTR
+
+       config KERNEL_F2FS_FS_POSIX_ACL
+               bool "Enable POSIX ACL for F2FS Filesystems"
+               select KERNEL_FS_POSIX_ACL
+               default n
+
+       config KERNEL_JFFS2_FS_POSIX_ACL
+               bool "Enable POSIX ACL for JFFS2 Filesystems"
+               select KERNEL_FS_POSIX_ACL
+               default n
+
+       config KERNEL_TMPFS_POSIX_ACL
+               bool "Enable POSIX ACL for TMPFS Filesystems"
+               select KERNEL_FS_POSIX_ACL
+               default n
+
+       config KERNEL_CIFS_ACL
+               bool "Enable CIFS ACLs"
+               select KERNEL_FS_POSIX_ACL
+               default y if USE_FS_ACL_ATTR
+
+       config KERNEL_HFS_FS_POSIX_ACL
+               bool "Enable POSIX ACL for HFS Filesystems"
+               select KERNEL_FS_POSIX_ACL
+               default y if USE_FS_ACL_ATTR
+
+       config KERNEL_HFSPLUG_FS_POSIX_ACL
+               bool "Enable POSIX ACL for HFS+ Filesystems"
+               select KERNEL_FS_POSIX_ACL
+               default y if USE_FS_ACL_ATTR
+
+       config KERNEL_NFS_ACL_SUPPORT
+               bool "Enable ACLs for NFS"
+               default y if USE_FS_ACL_ATTR
+
+       config KERNEL_NFS_V3_ACL_SUPPORT
+               bool "Enable ACLs for NFSv3"
+               default n
+
+       config KERNEL_NFSD_V2_ACL_SUPPORT
+               bool "Enable ACLs for NFSDv2"
+               default n
+
+       config KERNEL_NFSD_V3_ACL_SUPPORT
+               bool "Enable ACLs for NFSDv3"
+               default n
+
+       config KERNEL_REISER_FS_POSIX_ACL
+               bool "Enable POSIX ACLs for ReiserFS"
+               select KERNEL_FS_POSIX_ACL
+               default y if USE_FS_ACL_ATTR
+
+       config KERNEL_XFS_POSIX_ACL
+               bool "Enable POSIX ACLs for XFS"
+               select KERNEL_FS_POSIX_ACL
+               default y if USE_FS_ACL_ATTR
+
+       config KERNEL_JFS_POSIX_ACL
+               bool "Enable POSIX ACLs for JFS"
+               select KERNEL_FS_POSIX_ACL
+               default y if USE_FS_ACL_ATTR
+
+endmenu