1 # Copyright (C) 2006-2014 OpenWrt.org
3 # This is free software, licensed under the GNU General Public License v2.
4 # See /LICENSE for more information.
7 config KERNEL_BUILD_USER
8 string "Custom Kernel Build User Name"
9 default "builder" if BUILDBOT
12 Sets the Kernel build user string, which for example will be returned
13 by 'uname -a' on running systems.
14 If not set, uses system user at build time.
16 config KERNEL_BUILD_DOMAIN
17 string "Custom Kernel Build Domain Name"
18 default "buildhost" if BUILDBOT
21 Sets the Kernel build domain string, which for example will be
22 returned by 'uname -a' on running systems.
23 If not set, uses system hostname at build time.
26 bool "Enable support for printk"
29 config KERNEL_CRASHLOG
31 depends on !(arm || powerpc || sparc || TARGET_uml || i386 || x86_64)
35 bool "Support for paging of anonymous memory (swap)"
36 default y if !SMALL_FLASH
38 config KERNEL_DEBUG_FS
39 bool "Compile the kernel with debug filesystem enabled"
42 debugfs is a virtual file system that kernel developers use to put
43 debugging files into. Enable this option to be able to read and
44 write to these files. Many common debugging facilities, such as
45 ftrace, require the existence of debugfs.
47 config KERNEL_MIPS_FPU_EMULATOR
48 bool "Compile the kernel with MIPS FPU Emulator"
49 default y if TARGET_pistachio
50 depends on (mips || mipsel || mips64 || mips64el)
55 depends on (arm || aarch64)
57 config KERNEL_X86_VSYSCALL_EMULATION
58 bool "Enable vsyscall emulation"
62 This enables emulation of the legacy vsyscall page. Disabling
63 it is roughly equivalent to booting with vsyscall=none, except
64 that it will also disable the helpful warning if a program
65 tries to use a vsyscall. With this option set to N, offending
66 programs will just segfault, citing addresses of the form
69 This option is required by many programs built before 2013, and
70 care should be used even with newer programs if set to N.
72 Disabling this option saves about 7K of kernel size and
73 possibly 4K of additional runtime pagetable memory.
75 config KERNEL_PERF_EVENTS
76 bool "Compile the kernel with performance events and counters"
78 select KERNEL_ARM_PMU if (arm || aarch64)
80 config KERNEL_PROFILING
81 bool "Compile the kernel with profiling enabled"
83 select KERNEL_PERF_EVENTS
85 Enable the extended profiling support mechanisms used by profilers such
89 bool "Compile the kernel with undefined behaviour sanity checker"
91 This option enables undefined behaviour sanity checker
92 Compile-time instrumentation is used to detect various undefined
93 behaviours in runtime. Various types of checks may be enabled
94 via boot parameter ubsan_handle
95 (see: Documentation/dev-tools/ubsan.rst).
97 config KERNEL_UBSAN_SANITIZE_ALL
98 bool "Enable instrumentation for the entire kernel"
99 depends on KERNEL_UBSAN
102 This option activates instrumentation for the entire kernel.
103 If you don't enable this option, you have to explicitly specify
104 UBSAN_SANITIZE := y for the files/directories you want to check for UB.
105 Enabling this option will get kernel image size increased
108 config KERNEL_UBSAN_ALIGNMENT
109 bool "Enable checking of pointers alignment"
110 depends on KERNEL_UBSAN
112 This option enables detection of unaligned memory accesses.
113 Enabling this option on architectures that support unaligned
114 accesses may produce a lot of false positives.
116 config KERNEL_UBSAN_NULL
117 bool "Enable checking of null pointers"
118 depends on KERNEL_UBSAN
120 This option enables detection of memory accesses via a
124 bool "Compile the kernel with KASan: runtime memory debugger"
125 select KERNEL_SLUB_DEBUG
126 depends on (x86_64 || aarch64)
128 Enables kernel address sanitizer - runtime memory debugger,
129 designed to find out-of-bounds accesses and use-after-free bugs.
130 This is strictly a debugging feature and it requires a gcc version
131 of 4.9.2 or later. Detection of out of bounds accesses to stack or
132 global variables requires gcc 5.0 or later.
133 This feature consumes about 1/8 of available memory and brings about
134 ~x3 performance slowdown.
135 For better error detection enable CONFIG_STACKTRACE.
136 Currently CONFIG_KASAN doesn't work with CONFIG_DEBUG_SLAB
137 (the resulting kernel does not boot).
139 config KERNEL_KASAN_EXTRA
140 bool "KAsan: extra checks"
141 depends on KERNEL_KASAN && KERNEL_DEBUG_KERNEL
143 This enables further checks in the kernel address sanitizer, for now
144 it only includes the address-use-after-scope check that can lead
145 to excessive kernel stack usage, frame size warnings and longer
147 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81715 has more
151 prompt "Instrumentation type"
152 depends on KERNEL_KASAN
153 default KERNEL_KASAN_OUTLINE
155 config KERNEL_KASAN_OUTLINE
156 bool "Outline instrumentation"
158 Before every memory access compiler insert function call
159 __asan_load*/__asan_store*. These functions performs check
160 of shadow memory. This is slower than inline instrumentation,
161 however it doesn't bloat size of kernel's .text section so
164 config KERNEL_KASAN_INLINE
165 bool "Inline instrumentation"
167 Compiler directly inserts code checking shadow memory before
168 memory accesses. This is faster than outline (in some workloads
169 it gives about x2 boost over outline instrumentation), but
170 make kernel's .text size much bigger.
171 This requires a gcc version of 5.0 or later.
175 config KERNEL_TASKSTATS
176 bool "Compile the kernel with task resource/io statistics and accounting"
179 Enable the collection and publishing of task/io statistics and
180 accounting. Enable this option to enable i/o monitoring in system
185 config KERNEL_TASK_DELAY_ACCT
188 config KERNEL_TASK_IO_ACCOUNTING
191 config KERNEL_TASK_XACCT
196 config KERNEL_KALLSYMS
197 bool "Compile the kernel with symbol table information"
198 default y if !SMALL_FLASH
200 This will give you more information in stack traces from kernel oopses.
203 bool "Compile the kernel with tracing support"
204 depends on !TARGET_uml
207 config KERNEL_FTRACE_SYSCALLS
208 bool "Trace system calls"
209 depends on KERNEL_FTRACE
212 config KERNEL_ENABLE_DEFAULT_TRACERS
213 bool "Trace process context switches and events"
214 depends on KERNEL_FTRACE
217 config KERNEL_FUNCTION_TRACER
218 bool "Function tracer"
219 depends on KERNEL_FTRACE
222 config KERNEL_FUNCTION_GRAPH_TRACER
223 bool "Function graph tracer"
224 depends on KERNEL_FUNCTION_TRACER
227 config KERNEL_DYNAMIC_FTRACE
228 bool "Enable/disable function tracing dynamically"
229 depends on KERNEL_FUNCTION_TRACER
232 config KERNEL_FUNCTION_PROFILER
233 bool "Function profiler"
234 depends on KERNEL_FUNCTION_TRACER
237 config KERNEL_DEBUG_KERNEL
241 config KERNEL_DEBUG_INFO
242 bool "Compile the kernel with debug information"
243 default y if !SMALL_FLASH
244 select KERNEL_DEBUG_KERNEL
246 This will compile your kernel and modules with debug information.
248 config KERNEL_DEBUG_LL_UART_NONE
253 config KERNEL_DEBUG_LL
257 select KERNEL_DEBUG_LL_UART_NONE
259 ARM low level debugging.
261 config KERNEL_DYNAMIC_DEBUG
262 bool "Compile the kernel with dynamic printk"
263 select KERNEL_DEBUG_FS
266 Compiles debug level messages into the kernel, which would not
267 otherwise be available at runtime. These messages can then be
268 enabled/disabled based on various levels of scope - per source file,
269 function, module, format string, and line number. This mechanism
270 implicitly compiles in all pr_debug() and dev_dbg() calls, which
271 enlarges the kernel text size by about 2%.
273 config KERNEL_EARLY_PRINTK
274 bool "Compile the kernel with early printk"
275 default y if TARGET_bcm53xx
278 select KERNEL_DEBUG_KERNEL
279 select KERNEL_DEBUG_LL if arm
281 Compile the kernel with early printk support. This is only useful for
282 debugging purposes to send messages over the serial console in early boot.
283 Enable this to debug early boot problems.
285 config KERNEL_KPROBES
286 bool "Compile the kernel with kprobes support"
289 select KERNEL_PERF_EVENTS
291 Compiles the kernel with KPROBES support, which allows you to trap
292 at almost any kernel address and execute a callback function.
293 register_kprobe() establishes a probepoint and specifies the
294 callback. Kprobes is useful for kernel debugging, non-intrusive
295 instrumentation and testing.
296 If in doubt, say "N".
298 config KERNEL_KPROBE_EVENT
300 default y if KERNEL_KPROBES
302 config KERNEL_KPROBE_EVENTS
304 default y if KERNEL_KPROBES
307 bool "Compile the kernel with asynchronous IO support"
308 default y if !SMALL_FLASH
310 config KERNEL_FHANDLE
311 bool "Compile the kernel with support for fhandle syscalls"
312 default y if !SMALL_FLASH
314 config KERNEL_FANOTIFY
315 bool "Compile the kernel with modern file notification support"
316 default y if !SMALL_FLASH
318 config KERNEL_BLK_DEV_BSG
319 bool "Compile the kernel with SCSI generic v4 support for any block device"
322 config KERNEL_MAGIC_SYSRQ
323 bool "Compile the kernel with SysRq support"
326 config KERNEL_DEBUG_PINCTRL
327 bool "Compile the kernel with pinctrl debugging"
328 select KERNEL_DEBUG_KERNEL
330 config KERNEL_DEBUG_GPIO
331 bool "Compile the kernel with gpio debugging"
332 select KERNEL_DEBUG_KERNEL
334 config KERNEL_COREDUMP
337 config KERNEL_ELF_CORE
338 bool "Enable process core dump support"
339 select KERNEL_COREDUMP
340 default y if !SMALL_FLASH
342 config KERNEL_PROVE_LOCKING
343 bool "Enable kernel lock checking"
344 select KERNEL_DEBUG_KERNEL
347 config KERNEL_PRINTK_TIME
348 bool "Enable printk timestamps"
351 config KERNEL_SLUB_DEBUG
354 config KERNEL_SLUB_DEBUG_ON
357 config KERNEL_SLABINFO
358 select KERNEL_SLUB_DEBUG
359 select KERNEL_SLUB_DEBUG_ON
360 bool "Enable /proc slab debug info"
362 config KERNEL_PROC_PAGE_MONITOR
363 bool "Enable /proc page monitoring"
369 bool "Enable kexec support"
371 config KERNEL_PROC_VMCORE
374 config KERNEL_CRASH_DUMP
375 depends on i386 || x86_64 || arm || armeb
377 select KERNEL_PROC_VMCORE
378 bool "Enable support for kexec crashdump"
382 bool "Enable rfkill support"
383 default RFKILL_SUPPORT
386 bool "Enable sparse check during kernel build"
389 config KERNEL_DEVTMPFS
390 bool "Compile the kernel with device tmpfs enabled"
393 devtmpfs is a simple, kernel-managed /dev filesystem. The kernel creates
394 devices nodes for all registered devices to simplify boot, but leaves more
395 complex tasks to userspace (e.g. udev).
399 config KERNEL_DEVTMPFS_MOUNT
400 bool "Automatically mount devtmpfs after root filesystem is mounted"
406 bool "Enable kernel access key retention support"
409 config KERNEL_PERSISTENT_KEYRINGS
410 bool "Enable kernel persistent keyrings"
411 depends on KERNEL_KEYS
414 config KERNEL_BIG_KEYS
415 bool "Enable large payload keys on kernel keyrings"
416 depends on KERNEL_KEYS
419 config KERNEL_ENCRYPTED_KEYS
420 tristate "Enable keys with encrypted payloads on kernel keyrings"
421 depends on KERNEL_KEYS
425 # CGROUP support symbols
428 config KERNEL_CGROUPS
429 bool "Enable kernel cgroups"
430 default y if !SMALL_FLASH
434 config KERNEL_CGROUP_DEBUG
435 bool "Example debug cgroup subsystem"
438 This option enables a simple cgroup subsystem that
439 exports useful debugging information about the cgroups
442 config KERNEL_FREEZER
444 default y if KERNEL_CGROUP_FREEZER
446 config KERNEL_CGROUP_FREEZER
447 bool "Freezer cgroup subsystem"
450 Provides a way to freeze and unfreeze all tasks in a
453 config KERNEL_CGROUP_DEVICE
454 bool "Device controller for cgroups"
457 Provides a cgroup implementing whitelists for devices which
458 a process in the cgroup can mknod or open.
460 config KERNEL_CGROUP_PIDS
461 bool "PIDs cgroup subsystem"
464 Provides enforcement of process number limits in the scope of a
467 config KERNEL_CPUSETS
468 bool "Cpuset support"
469 default y if !SMALL_FLASH
471 This option will let you create and manage CPUSETs which
472 allow dynamically partitioning a system into sets of CPUs and
473 Memory Nodes and assigning tasks to run only within those sets.
474 This is primarily useful on large SMP or NUMA systems.
476 config KERNEL_PROC_PID_CPUSET
477 bool "Include legacy /proc/<pid>/cpuset file"
479 depends on KERNEL_CPUSETS
481 config KERNEL_CGROUP_CPUACCT
482 bool "Simple CPU accounting cgroup subsystem"
483 default y if !SMALL_FLASH
485 Provides a simple Resource Controller for monitoring the
486 total CPU consumed by the tasks in a cgroup.
488 config KERNEL_RESOURCE_COUNTERS
489 bool "Resource counters"
490 default y if !SMALL_FLASH
492 This option enables controller independent resource accounting
493 infrastructure that works with cgroups.
495 config KERNEL_MM_OWNER
497 default y if KERNEL_MEMCG
500 bool "Memory Resource Controller for Control Groups"
501 default y if !SMALL_FLASH
502 depends on KERNEL_RESOURCE_COUNTERS || !LINUX_3_18
504 Provides a memory resource controller that manages both anonymous
505 memory and page cache. (See Documentation/cgroups/memory.txt)
507 Note that setting this option increases fixed memory overhead
508 associated with each page of memory in the system. By this,
509 20(40)bytes/PAGE_SIZE on 32(64)bit system will be occupied by memory
510 usage tracking struct at boot. Total amount of this is printed out
513 Only enable when you're ok with these tradeoffs and really
514 sure you need the memory resource controller. Even when you enable
515 this, you can set "cgroup_disable=memory" at your boot option to
516 disable memory resource controller and you can avoid overheads
517 (but lose benefits of memory resource controller).
519 This config option also selects MM_OWNER config option, which
520 could in turn add some fork/exit overhead.
522 config KERNEL_MEMCG_SWAP
523 bool "Memory Resource Controller Swap Extension"
525 depends on KERNEL_MEMCG
527 Add swap management feature to memory resource controller. When you
528 enable this, you can limit mem+swap usage per cgroup. In other words,
529 when you disable this, memory resource controller has no cares to
530 usage of swap...a process can exhaust all of the swap. This extension
531 is useful when you want to avoid exhaustion swap but this itself
532 adds more overheads and consumes memory for remembering information.
533 Especially if you use 32bit system or small memory system, please
534 be careful about enabling this. When memory resource controller
535 is disabled by boot option, this will be automatically disabled and
536 there will be no overhead from this. Even when you set this config=y,
537 if boot option "swapaccount=0" is set, swap will not be accounted.
538 Now, memory usage of swap_cgroup is 2 bytes per entry. If swap page
539 size is 4096bytes, 512k per 1Gbytes of swap.
541 config KERNEL_MEMCG_SWAP_ENABLED
542 bool "Memory Resource Controller Swap Extension enabled by default"
544 depends on KERNEL_MEMCG_SWAP
546 Memory Resource Controller Swap Extension comes with its price in
547 a bigger memory consumption. General purpose distribution kernels
548 which want to enable the feature but keep it disabled by default
549 and let the user enable it by swapaccount boot command line
550 parameter should have this option unselected.
552 Those who want to have the feature enabled by default should
553 select this option (if, for some reason, they need to disable it,
554 then swapaccount=0 does the trick).
557 config KERNEL_MEMCG_KMEM
558 bool "Memory Resource Controller Kernel Memory accounting (EXPERIMENTAL)"
559 default y if !SMALL_FLASH
560 depends on KERNEL_MEMCG
562 The Kernel Memory extension for Memory Resource Controller can limit
563 the amount of memory used by kernel objects in the system. Those are
564 fundamentally different from the entities handled by the standard
565 Memory Controller, which are page-based, and can be swapped. Users of
566 the kmem extension can use it to guarantee that no group of processes
567 will ever exhaust kernel resources alone.
569 config KERNEL_CGROUP_PERF
570 bool "Enable perf_event per-cpu per-container group (cgroup) monitoring"
571 select KERNEL_PERF_EVENTS
574 This option extends the per-cpu mode to restrict monitoring to
575 threads which belong to the cgroup specified and run on the
578 menuconfig KERNEL_CGROUP_SCHED
579 bool "Group CPU scheduler"
580 default y if !SMALL_FLASH
582 This feature lets CPU scheduler recognize task groups and control CPU
583 bandwidth allocation to such task groups. It uses cgroups to group
586 if KERNEL_CGROUP_SCHED
588 config KERNEL_FAIR_GROUP_SCHED
589 bool "Group scheduling for SCHED_OTHER"
590 default y if !SMALL_FLASH
592 config KERNEL_CFS_BANDWIDTH
593 bool "CPU bandwidth provisioning for FAIR_GROUP_SCHED"
595 depends on KERNEL_FAIR_GROUP_SCHED
597 This option allows users to define CPU bandwidth rates (limits) for
598 tasks running within the fair group scheduler. Groups with no limit
599 set are considered to be unconstrained and will run with no
601 See tip/Documentation/scheduler/sched-bwc.txt for more information.
603 config KERNEL_RT_GROUP_SCHED
604 bool "Group scheduling for SCHED_RR/FIFO"
605 default y if !SMALL_FLASH
607 This feature lets you explicitly allocate real CPU bandwidth
608 to task groups. If enabled, it will also make it impossible to
609 schedule realtime tasks for non-root users until you allocate
610 realtime bandwidth for them.
614 config KERNEL_BLK_CGROUP
615 bool "Block IO controller"
618 Generic block IO controller cgroup interface. This is the common
619 cgroup interface which should be used by various IO controlling
622 Currently, CFQ IO scheduler uses it to recognize task groups and
623 control disk bandwidth allocation (proportional time slice allocation)
624 to such task groups. It is also used by bio throttling logic in
625 block layer to implement upper limit in IO rates on a device.
627 This option only enables generic Block IO controller infrastructure.
628 One needs to also enable actual IO controlling logic/policy. For
629 enabling proportional weight division of disk bandwidth in CFQ, set
630 CONFIG_CFQ_GROUP_IOSCHED=y; for enabling throttling policy, set
631 CONFIG_BLK_DEV_THROTTLING=y.
635 config KERNEL_CFQ_GROUP_IOSCHED
636 bool "Proportional weight of disk bandwidth in CFQ"
638 config KERNEL_BLK_DEV_THROTTLING
639 bool "Enable throttling policy"
640 default y if TARGET_bcm27xx
642 config KERNEL_BLK_DEV_THROTTLING_LOW
643 bool "Block throttling .low limit interface support (EXPERIMENTAL)"
644 depends on KERNEL_BLK_DEV_THROTTLING
647 config KERNEL_DEBUG_BLK_CGROUP
648 bool "Enable Block IO controller debugging"
650 depends on KERNEL_BLK_CGROUP
652 Enable some debugging help. Currently it exports additional stat
653 files in a cgroup which can be useful for debugging.
655 config KERNEL_NET_CLS_CGROUP
656 bool "Control Group Classifier"
659 config KERNEL_NETPRIO_CGROUP
660 bool "Network priority cgroup"
666 # Namespace support symbols
669 config KERNEL_NAMESPACES
670 bool "Enable kernel namespaces"
671 default y if !SMALL_FLASH
679 In this namespace, tasks see different info provided
680 with the uname() system call.
686 In this namespace, tasks work with IPC ids which correspond to
687 different IPC objects in different namespaces.
689 config KERNEL_USER_NS
690 bool "User namespace (EXPERIMENTAL)"
693 This allows containers, i.e. vservers, to use user namespaces
694 to provide different user info for different servers.
697 bool "PID Namespaces"
700 Support process id namespaces. This allows having multiple
701 processes with the same pid as long as they are in different
702 pid namespaces. This is a building block of containers.
705 bool "Network namespace"
708 Allow user space to create what appear to be multiple instances
709 of the network stack.
713 config KERNEL_DEVPTS_MULTIPLE_INSTANCES
714 bool "Support multiple instances of devpts"
715 default y if !SMALL_FLASH
717 Enable support for multiple instances of devpts filesystem.
718 If you want to have isolated PTY namespaces (eg: in containers),
719 say Y here. Otherwise, say N. If enabled, each mount of devpts
720 filesystem with the '-o newinstance' option will create an
721 independent PTY namespace.
723 config KERNEL_POSIX_MQUEUE
724 bool "POSIX Message Queues"
725 default y if !SMALL_FLASH
727 POSIX variant of message queues is a part of IPC. In POSIX message
728 queues every message has a priority which decides about succession
729 of receiving it by a process. If you want to compile and run
730 programs written e.g. for Solaris with use of its POSIX message
731 queues (functions mq_*) say Y here.
733 POSIX message queues are visible as a filesystem called 'mqueue'
734 and can be mounted somewhere if you want to do filesystem
735 operations on message queues.
738 config KERNEL_SECCOMP_FILTER
740 default y if !SMALL_FLASH
742 config KERNEL_SECCOMP
743 bool "Enable seccomp support"
744 depends on !(TARGET_uml)
745 select KERNEL_SECCOMP_FILTER
746 default y if !SMALL_FLASH
748 Build kernel with support for seccomp.
754 config KERNEL_IP_MROUTE
755 bool "Enable IPv4 multicast routing"
758 Multicast routing requires a multicast routing daemon in
759 addition to kernel support.
770 config KERNEL_IPV6_MULTIPLE_TABLES
773 config KERNEL_IPV6_SUBTREES
776 config KERNEL_IPV6_MROUTE
777 bool "Enable IPv6 multicast routing"
780 Multicast routing requires a multicast routing daemon in
781 addition to kernel support.
783 config KERNEL_IPV6_PIMSM_V2
789 # NFS related symbols
792 bool "Compile the kernel with rootfs on NFS"
794 If you want to make your kernel boot off a NFS server as root
795 filesystem, select Y here.
799 config KERNEL_IP_PNP_DHCP
802 config KERNEL_IP_PNP_BOOTP
805 config KERNEL_IP_PNP_RARP
817 config KERNEL_ROOT_NFS
822 menu "Filesystem ACL and attr support options"
823 config USE_FS_ACL_ATTR
824 bool "Use filesystem ACL and attr support by default"
827 Make using ACLs (e.g. POSIX ACL, NFSv4 ACL) the default
828 for kernel and packages, except tmpfs, flash filesystems,
829 and old NFS. Also enable userspace extended attribute support
830 by default. (OpenWrt already has an expection it will be
831 present in the kernel).
833 config KERNEL_FS_POSIX_ACL
834 bool "Enable POSIX ACL support"
835 default y if USE_FS_ACL_ATTR
837 config KERNEL_BTRFS_FS_POSIX_ACL
838 bool "Enable POSIX ACL for BtrFS Filesystems"
839 select KERNEL_FS_POSIX_ACL
840 default y if USE_FS_ACL_ATTR
842 config KERNEL_EXT4_FS_POSIX_ACL
843 bool "Enable POSIX ACL for Ext4 Filesystems"
844 select KERNEL_FS_POSIX_ACL
845 default y if USE_FS_ACL_ATTR
847 config KERNEL_F2FS_FS_POSIX_ACL
848 bool "Enable POSIX ACL for F2FS Filesystems"
849 select KERNEL_FS_POSIX_ACL
852 config KERNEL_JFFS2_FS_POSIX_ACL
853 bool "Enable POSIX ACL for JFFS2 Filesystems"
854 select KERNEL_FS_POSIX_ACL
857 config KERNEL_TMPFS_POSIX_ACL
858 bool "Enable POSIX ACL for TMPFS Filesystems"
859 select KERNEL_FS_POSIX_ACL
862 config KERNEL_CIFS_ACL
863 bool "Enable CIFS ACLs"
864 select KERNEL_FS_POSIX_ACL
865 default y if USE_FS_ACL_ATTR
867 config KERNEL_HFS_FS_POSIX_ACL
868 bool "Enable POSIX ACL for HFS Filesystems"
869 select KERNEL_FS_POSIX_ACL
870 default y if USE_FS_ACL_ATTR
872 config KERNEL_HFSPLUS_FS_POSIX_ACL
873 bool "Enable POSIX ACL for HFS+ Filesystems"
874 select KERNEL_FS_POSIX_ACL
875 default y if USE_FS_ACL_ATTR
877 config KERNEL_NFS_ACL_SUPPORT
878 bool "Enable ACLs for NFS"
879 default y if USE_FS_ACL_ATTR
881 config KERNEL_NFS_V3_ACL_SUPPORT
882 bool "Enable ACLs for NFSv3"
885 config KERNEL_NFSD_V2_ACL_SUPPORT
886 bool "Enable ACLs for NFSDv2"
889 config KERNEL_NFSD_V3_ACL_SUPPORT
890 bool "Enable ACLs for NFSDv3"
893 config KERNEL_REISER_FS_POSIX_ACL
894 bool "Enable POSIX ACLs for ReiserFS"
895 select KERNEL_FS_POSIX_ACL
896 default y if USE_FS_ACL_ATTR
898 config KERNEL_XFS_POSIX_ACL
899 bool "Enable POSIX ACLs for XFS"
900 select KERNEL_FS_POSIX_ACL
901 default y if USE_FS_ACL_ATTR
903 config KERNEL_JFS_POSIX_ACL
904 bool "Enable POSIX ACLs for JFS"
905 select KERNEL_FS_POSIX_ACL
906 default y if USE_FS_ACL_ATTR
911 bool "/dev/mem virtual device support"
913 Say Y here if you want to support the /dev/mem device.
914 The /dev/mem device is used to access areas of physical
917 config KERNEL_DEVKMEM
918 bool "/dev/kmem virtual device support"
920 Say Y here if you want to support the /dev/kmem device. The
921 /dev/kmem device is rarely used, but can be used for certain
922 kind of kernel debugging operations.
924 config KERNEL_SQUASHFS_FRAGMENT_CACHE_SIZE
925 int "Number of squashfs fragments cached"
926 default 2 if (SMALL_FLASH && !LOW_MEMORY_FOOTPRINT)
930 # compile optimiziation setting
933 prompt "Compiler optimization level"
934 default KERNEL_CC_OPTIMIZE_FOR_SIZE if SMALL_FLASH
936 config KERNEL_CC_OPTIMIZE_FOR_PERFORMANCE
937 bool "Optimize for performance"
939 This is the default optimization level for the kernel, building
940 with the "-O2" compiler flag for best performance and most
941 helpful compile-time warnings.
943 config KERNEL_CC_OPTIMIZE_FOR_SIZE
944 bool "Optimize for size"
946 Enabling this option will pass "-Os" instead of "-O2" to
947 your compiler resulting in a smaller kernel.