hostapd: fix P2P group information processing vulnerability
[librecmc/librecmc.git] / config / Config-kernel.in
1 # Copyright (C) 2006-2014 OpenWrt.org
2 #
3 # This is free software, licensed under the GNU General Public License v2.
4 # See /LICENSE for more information.
5 #
6
7 config KERNEL_BUILD_USER
8         string "Custom Kernel Build User Name"
9         default "builder" if BUILDBOT
10         default ""
11         help
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.
15
16 config KERNEL_BUILD_DOMAIN
17         string "Custom Kernel Build Domain Name"
18         default "buildhost" if BUILDBOT
19         default ""
20         help
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.
24
25 config KERNEL_PRINTK
26         bool "Enable support for printk"
27         default y
28
29 config KERNEL_CRASHLOG
30         bool "Crash logging"
31         depends on !(arm || powerpc || sparc || TARGET_uml || i386 || x86_64)
32         default y
33
34 config KERNEL_SWAP
35         bool "Support for paging of anonymous memory (swap)"
36         default y if !SMALL_FLASH
37
38 config KERNEL_DEBUG_FS
39         bool "Compile the kernel with debug filesystem enabled"
40         default y
41         help
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.
46
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)
51
52 config KERNEL_ARM_PMU
53         bool
54         default n
55         depends on (arm || aarch64)
56
57 config KERNEL_PERF_EVENTS
58         bool "Compile the kernel with performance events and counters"
59         default n
60         select KERNEL_ARM_PMU if (arm || aarch64)
61
62 config KERNEL_PROFILING
63         bool "Compile the kernel with profiling enabled"
64         default n
65         select KERNEL_PERF_EVENTS
66         help
67           Enable the extended profiling support mechanisms used by profilers such
68           as OProfile.
69
70 config KERNEL_TASKSTATS
71         bool "Compile the kernel with task resource/io statistics and accounting"
72         default n
73         help
74           Enable the collection and publishing of task/io statistics and
75           accounting.  Enable this option to enable i/o monitoring in system
76           monitors.
77
78 if KERNEL_TASKSTATS
79
80         config KERNEL_TASK_DELAY_ACCT
81                 def_bool y
82
83         config KERNEL_TASK_IO_ACCOUNTING
84                 def_bool y
85
86         config KERNEL_TASK_XACCT
87                 def_bool y
88
89 endif
90
91 config KERNEL_KALLSYMS
92         bool "Compile the kernel with symbol table information"
93         default y if !SMALL_FLASH
94         help
95           This will give you more information in stack traces from kernel oopses.
96
97 config KERNEL_FTRACE
98         bool "Compile the kernel with tracing support"
99         depends on !TARGET_uml
100         default n
101
102 config KERNEL_FTRACE_SYSCALLS
103         bool "Trace system calls"
104         depends on KERNEL_FTRACE
105         default n
106
107 config KERNEL_ENABLE_DEFAULT_TRACERS
108         bool "Trace process context switches and events"
109         depends on KERNEL_FTRACE
110         default n
111
112 config KERNEL_FUNCTION_TRACER
113         bool "Function tracer"
114         depends on KERNEL_FTRACE
115         default n
116
117 config KERNEL_FUNCTION_GRAPH_TRACER
118         bool "Function graph tracer"
119         depends on KERNEL_FUNCTION_TRACER
120         default n
121
122 config KERNEL_DYNAMIC_FTRACE
123         bool "Enable/disable function tracing dynamically"
124         depends on KERNEL_FUNCTION_TRACER
125         default n
126
127 config KERNEL_FUNCTION_PROFILER
128         bool "Function profiler"
129         depends on KERNEL_FUNCTION_TRACER
130         default n
131
132 config KERNEL_DEBUG_KERNEL
133         bool
134         default n
135
136 config KERNEL_DEBUG_INFO
137         bool "Compile the kernel with debug information"
138         default y if !SMALL_FLASH
139         select KERNEL_DEBUG_KERNEL
140         help
141           This will compile your kernel and modules with debug information.
142
143 config KERNEL_DEBUG_LL_UART_NONE
144         bool
145         default n
146         depends on arm
147
148 config KERNEL_DEBUG_LL
149         bool
150         default n
151         depends on arm
152         select KERNEL_DEBUG_LL_UART_NONE
153         help
154           ARM low level debugging.
155
156 config KERNEL_DYNAMIC_DEBUG
157         bool "Compile the kernel with dynamic printk"
158         select KERNEL_DEBUG_FS
159         default n
160         help
161           Compiles debug level messages into the kernel, which would not
162           otherwise be available at runtime. These messages can then be
163           enabled/disabled based on various levels of scope - per source file,
164           function, module, format string, and line number. This mechanism
165           implicitly compiles in all pr_debug() and dev_dbg() calls, which
166           enlarges the kernel text size by about 2%.
167
168 config KERNEL_EARLY_PRINTK
169         bool "Compile the kernel with early printk"
170         default y if TARGET_bcm53xx
171         default n
172         depends on arm
173         select KERNEL_DEBUG_KERNEL
174         select KERNEL_DEBUG_LL if arm
175         help
176           Compile the kernel with early printk support.  This is only useful for
177           debugging purposes to send messages over the serial console in early boot.
178           Enable this to debug early boot problems.
179
180 config KERNEL_KPROBES
181         bool "Compile the kernel with kprobes support"
182         default n
183         select KERNEL_FTRACE
184         select KERNEL_PERF_EVENTS
185         help
186           Compiles the kernel with KPROBES support, which allows you to trap
187           at almost any kernel address and execute a callback function.
188           register_kprobe() establishes a probepoint and specifies the
189           callback. Kprobes is useful for kernel debugging, non-intrusive
190           instrumentation and testing.
191           If in doubt, say "N".
192
193 config KERNEL_KPROBE_EVENT
194         bool
195         default y if KERNEL_KPROBES
196
197 config KERNEL_KPROBE_EVENTS
198         bool
199         default y if KERNEL_KPROBES
200
201 config KERNEL_AIO
202         bool "Compile the kernel with asynchronous IO support"
203         default n
204
205 config KERNEL_FHANDLE
206         bool "Compile the kernel with support for fhandle syscalls"
207         default n
208
209 config KERNEL_FANOTIFY
210         bool "Compile the kernel with modern file notification support"
211         default n
212
213 config KERNEL_BLK_DEV_BSG
214         bool "Compile the kernel with SCSI generic v4 support for any block device"
215         default n
216
217 config KERNEL_MAGIC_SYSRQ
218         bool "Compile the kernel with SysRq support"
219         default y
220
221 config KERNEL_DEBUG_PINCTRL
222         bool "Compile the kernel with pinctrl debugging"
223         select KERNEL_DEBUG_KERNEL
224
225 config KERNEL_DEBUG_GPIO
226         bool "Compile the kernel with gpio debugging"
227         select KERNEL_DEBUG_KERNEL
228
229 config KERNEL_COREDUMP
230         bool
231
232 config KERNEL_ELF_CORE
233         bool "Enable process core dump support"
234         select KERNEL_COREDUMP
235         default y if !SMALL_FLASH
236
237 config KERNEL_PROVE_LOCKING
238         bool "Enable kernel lock checking"
239         select KERNEL_DEBUG_KERNEL
240         default n
241
242 config KERNEL_PRINTK_TIME
243         bool "Enable printk timestamps"
244         default y
245
246 config KERNEL_SLUB_DEBUG
247         bool
248
249 config KERNEL_SLUB_DEBUG_ON
250         bool
251
252 config KERNEL_SLABINFO
253         select KERNEL_SLUB_DEBUG
254         select KERNEL_SLUB_DEBUG_ON
255         bool "Enable /proc slab debug info"
256
257 config KERNEL_PROC_PAGE_MONITOR
258         bool "Enable /proc page monitoring"
259
260 config KERNEL_RELAY
261         bool
262
263 config KERNEL_KEXEC
264         bool "Enable kexec support"
265
266 config KERNEL_PROC_VMCORE
267         bool
268
269 config KERNEL_CRASH_DUMP
270         depends on i386 || x86_64 || arm || armeb
271         select KERNEL_KEXEC
272         select KERNEL_PROC_VMCORE
273         bool "Enable support for kexec crashdump"
274         default y
275
276 config USE_RFKILL
277         bool "Enable rfkill support"
278         default RFKILL_SUPPORT
279
280 config USE_SPARSE
281         bool "Enable sparse check during kernel build"
282         default n
283
284 config KERNEL_DEVTMPFS
285         bool "Compile the kernel with device tmpfs enabled"
286         default n
287         help
288           devtmpfs is a simple, kernel-managed /dev filesystem. The kernel creates
289           devices nodes for all registered devices to simplify boot, but leaves more
290           complex tasks to userspace (e.g. udev).
291
292 if KERNEL_DEVTMPFS
293
294         config KERNEL_DEVTMPFS_MOUNT
295                 bool "Automatically mount devtmpfs after root filesystem is mounted"
296                 default n
297
298 endif
299
300 config KERNEL_KEYS
301     bool "Enable kernel access key retention support"
302     default n
303
304 config KERNEL_PERSISTENT_KEYRINGS
305     bool "Enable kernel persistent keyrings"
306     depends on KERNEL_KEYS
307     default n
308
309 config KERNEL_BIG_KEYS
310     bool "Enable large payload keys on kernel keyrings"
311     depends on KERNEL_KEYS
312     default n
313
314 config KERNEL_ENCRYPTED_KEYS
315     tristate "Enable keys with encrypted payloads on kernel keyrings"
316     depends on KERNEL_KEYS
317     default n
318
319 #
320 # CGROUP support symbols
321 #
322
323 config KERNEL_CGROUPS
324         bool "Enable kernel cgroups"
325         default n
326
327 if KERNEL_CGROUPS
328
329         config KERNEL_CGROUP_DEBUG
330                 bool "Example debug cgroup subsystem"
331                 default n
332                 help
333                   This option enables a simple cgroup subsystem that
334                   exports useful debugging information about the cgroups
335                   framework.
336
337         config KERNEL_FREEZER
338                 bool
339                 default y if KERNEL_CGROUP_FREEZER
340
341         config KERNEL_CGROUP_FREEZER
342                 bool "Freezer cgroup subsystem"
343                 default y
344                 help
345                   Provides a way to freeze and unfreeze all tasks in a
346                   cgroup.
347
348         config KERNEL_CGROUP_DEVICE
349                 bool "Device controller for cgroups"
350                 default y
351                 help
352                   Provides a cgroup implementing whitelists for devices which
353                   a process in the cgroup can mknod or open.
354
355         config KERNEL_CGROUP_PIDS
356                 bool "PIDs cgroup subsystem"
357                 default y
358                 help
359                   Provides enforcement of process number limits in the scope of a
360                   cgroup.
361
362         config KERNEL_CPUSETS
363                 bool "Cpuset support"
364                 default n
365                 help
366                   This option will let you create and manage CPUSETs which
367                   allow dynamically partitioning a system into sets of CPUs and
368                   Memory Nodes and assigning tasks to run only within those sets.
369                   This is primarily useful on large SMP or NUMA systems.
370
371         config KERNEL_PROC_PID_CPUSET
372                 bool "Include legacy /proc/<pid>/cpuset file"
373                 default n
374                 depends on KERNEL_CPUSETS
375
376         config KERNEL_CGROUP_CPUACCT
377                 bool "Simple CPU accounting cgroup subsystem"
378                 default n
379                 help
380                   Provides a simple Resource Controller for monitoring the
381                   total CPU consumed by the tasks in a cgroup.
382
383         config KERNEL_RESOURCE_COUNTERS
384                 bool "Resource counters"
385                 default n
386                 help
387                   This option enables controller independent resource accounting
388                   infrastructure that works with cgroups.
389
390         config KERNEL_MM_OWNER
391                 bool
392                 default y if KERNEL_MEMCG
393
394         config KERNEL_MEMCG
395                 bool "Memory Resource Controller for Control Groups"
396                 default n
397                 depends on KERNEL_RESOURCE_COUNTERS || !LINUX_3_18
398                 help
399                   Provides a memory resource controller that manages both anonymous
400                   memory and page cache. (See Documentation/cgroups/memory.txt)
401
402                   Note that setting this option increases fixed memory overhead
403                   associated with each page of memory in the system. By this,
404                   20(40)bytes/PAGE_SIZE on 32(64)bit system will be occupied by memory
405                   usage tracking struct at boot. Total amount of this is printed out
406                   at boot.
407
408                   Only enable when you're ok with these tradeoffs and really
409                   sure you need the memory resource controller. Even when you enable
410                   this, you can set "cgroup_disable=memory" at your boot option to
411                   disable memory resource controller and you can avoid overheads
412                   (but lose benefits of memory resource controller).
413
414                   This config option also selects MM_OWNER config option, which
415                   could in turn add some fork/exit overhead.
416
417         config KERNEL_MEMCG_SWAP
418                 bool "Memory Resource Controller Swap Extension"
419                 default n
420                 depends on KERNEL_MEMCG
421                 help
422                   Add swap management feature to memory resource controller. When you
423                   enable this, you can limit mem+swap usage per cgroup. In other words,
424                   when you disable this, memory resource controller has no cares to
425                   usage of swap...a process can exhaust all of the swap. This extension
426                   is useful when you want to avoid exhaustion swap but this itself
427                   adds more overheads and consumes memory for remembering information.
428                   Especially if you use 32bit system or small memory system, please
429                   be careful about enabling this. When memory resource controller
430                   is disabled by boot option, this will be automatically disabled and
431                   there will be no overhead from this. Even when you set this config=y,
432                   if boot option "swapaccount=0" is set, swap will not be accounted.
433                   Now, memory usage of swap_cgroup is 2 bytes per entry. If swap page
434                   size is 4096bytes, 512k per 1Gbytes of swap.
435
436         config KERNEL_MEMCG_SWAP_ENABLED
437                 bool "Memory Resource Controller Swap Extension enabled by default"
438                 default n
439                 depends on KERNEL_MEMCG_SWAP
440                 help
441                   Memory Resource Controller Swap Extension comes with its price in
442                   a bigger memory consumption. General purpose distribution kernels
443                   which want to enable the feature but keep it disabled by default
444                   and let the user enable it by swapaccount boot command line
445                   parameter should have this option unselected.
446
447                   Those who want to have the feature enabled by default should
448                   select this option (if, for some reason, they need to disable it,
449                   then swapaccount=0 does the trick).
450
451
452         config KERNEL_MEMCG_KMEM
453                 bool "Memory Resource Controller Kernel Memory accounting (EXPERIMENTAL)"
454                 default n
455                 depends on KERNEL_MEMCG
456                 help
457                   The Kernel Memory extension for Memory Resource Controller can limit
458                   the amount of memory used by kernel objects in the system. Those are
459                   fundamentally different from the entities handled by the standard
460                   Memory Controller, which are page-based, and can be swapped. Users of
461                   the kmem extension can use it to guarantee that no group of processes
462                   will ever exhaust kernel resources alone.
463
464         config KERNEL_CGROUP_PERF
465                 bool "Enable perf_event per-cpu per-container group (cgroup) monitoring"
466                 select KERNEL_PERF_EVENTS
467                 default n
468                 help
469                   This option extends the per-cpu mode to restrict monitoring to
470                   threads which belong to the cgroup specified and run on the
471                   designated cpu.
472
473         menuconfig KERNEL_CGROUP_SCHED
474                 bool "Group CPU scheduler"
475                 default n
476                 help
477                   This feature lets CPU scheduler recognize task groups and control CPU
478                   bandwidth allocation to such task groups. It uses cgroups to group
479                   tasks.
480
481         if KERNEL_CGROUP_SCHED
482
483                 config KERNEL_FAIR_GROUP_SCHED
484                         bool "Group scheduling for SCHED_OTHER"
485                         default n
486
487                 config KERNEL_CFS_BANDWIDTH
488                         bool "CPU bandwidth provisioning for FAIR_GROUP_SCHED"
489                         default n
490                         depends on KERNEL_FAIR_GROUP_SCHED
491                         help
492                           This option allows users to define CPU bandwidth rates (limits) for
493                           tasks running within the fair group scheduler.  Groups with no limit
494                           set are considered to be unconstrained and will run with no
495                           restriction.
496                           See tip/Documentation/scheduler/sched-bwc.txt for more information.
497
498                 config KERNEL_RT_GROUP_SCHED
499                         bool "Group scheduling for SCHED_RR/FIFO"
500                         default n
501                         help
502                           This feature lets you explicitly allocate real CPU bandwidth
503                           to task groups. If enabled, it will also make it impossible to
504                           schedule realtime tasks for non-root users until you allocate
505                           realtime bandwidth for them.
506
507         endif
508
509         config KERNEL_BLK_CGROUP
510                 bool "Block IO controller"
511                 default y
512                 help
513                   Generic block IO controller cgroup interface. This is the common
514                   cgroup interface which should be used by various IO controlling
515                   policies.
516
517                   Currently, CFQ IO scheduler uses it to recognize task groups and
518                   control disk bandwidth allocation (proportional time slice allocation)
519                   to such task groups. It is also used by bio throttling logic in
520                   block layer to implement upper limit in IO rates on a device.
521
522                   This option only enables generic Block IO controller infrastructure.
523                   One needs to also enable actual IO controlling logic/policy. For
524                   enabling proportional weight division of disk bandwidth in CFQ, set
525                   CONFIG_CFQ_GROUP_IOSCHED=y; for enabling throttling policy, set
526                   CONFIG_BLK_DEV_THROTTLING=y.
527
528         if KERNEL_BLK_CGROUP
529
530                 config KERNEL_CFQ_GROUP_IOSCHED
531                         bool "Proportional weight of disk bandwidth in CFQ"
532
533                 config KERNEL_BLK_DEV_THROTTLING
534                         bool "Enable throttling policy"
535                         default y if TARGET_brcm2708
536
537                 config KERNEL_BLK_DEV_THROTTLING_LOW
538                         bool "Block throttling .low limit interface support (EXPERIMENTAL)"
539                         depends on KERNEL_BLK_DEV_THROTTLING
540         endif
541
542         config KERNEL_DEBUG_BLK_CGROUP
543                 bool "Enable Block IO controller debugging"
544                 default n
545                 depends on KERNEL_BLK_CGROUP
546                 help
547                   Enable some debugging help. Currently it exports additional stat
548                   files in a cgroup which can be useful for debugging.
549
550         config KERNEL_NET_CLS_CGROUP
551                 bool "Control Group Classifier"
552                 default y
553
554         config KERNEL_NETPRIO_CGROUP
555                 bool "Network priority cgroup"
556                 default y
557
558 endif
559
560 #
561 # Namespace support symbols
562 #
563
564 config KERNEL_NAMESPACES
565         bool "Enable kernel namespaces"
566         default n
567
568 if KERNEL_NAMESPACES
569
570         config KERNEL_UTS_NS
571                 bool "UTS namespace"
572                 default y
573                 help
574                   In this namespace, tasks see different info provided
575                   with the uname() system call.
576
577         config KERNEL_IPC_NS
578                 bool "IPC namespace"
579                 default y
580                 help
581                   In this namespace, tasks work with IPC ids which correspond to
582                   different IPC objects in different namespaces.
583
584         config KERNEL_USER_NS
585                 bool "User namespace (EXPERIMENTAL)"
586                 default y
587                 help
588                   This allows containers, i.e. vservers, to use user namespaces
589                   to provide different user info for different servers.
590
591         config KERNEL_PID_NS
592                 bool "PID Namespaces"
593                 default y
594                 help
595                   Support process id namespaces. This allows having multiple
596                   processes with the same pid as long as they are in different
597                   pid namespaces. This is a building block of containers.
598
599         config KERNEL_NET_NS
600                 bool "Network namespace"
601                 default y
602                 help
603                   Allow user space to create what appear to be multiple instances
604                   of the network stack.
605
606 endif
607
608 #
609 # LXC related symbols
610 #
611
612 config KERNEL_LXC_MISC
613         bool "Enable miscellaneous LXC related options"
614         default n
615
616 if KERNEL_LXC_MISC
617
618         config KERNEL_DEVPTS_MULTIPLE_INSTANCES
619                 bool "Support multiple instances of devpts"
620                 default y
621                 help
622                   Enable support for multiple instances of devpts filesystem.
623                   If you want to have isolated PTY namespaces (eg: in containers),
624                   say Y here. Otherwise, say N. If enabled, each mount of devpts
625                   filesystem with the '-o newinstance' option will create an
626                   independent PTY namespace.
627
628         config KERNEL_POSIX_MQUEUE
629                 bool "POSIX Message Queues"
630                 default y
631                 help
632                   POSIX variant of message queues is a part of IPC. In POSIX message
633                   queues every message has a priority which decides about succession
634                   of receiving it by a process. If you want to compile and run
635                   programs written e.g. for Solaris with use of its POSIX message
636                   queues (functions mq_*) say Y here.
637
638                   POSIX message queues are visible as a filesystem called 'mqueue'
639                   and can be mounted somewhere if you want to do filesystem
640                   operations on message queues.
641
642 endif
643
644 config KERNEL_SECCOMP_FILTER
645         bool
646         default n
647
648 config KERNEL_SECCOMP
649         bool "Enable seccomp support"
650                 depends on !(TARGET_uml)
651                 select KERNEL_SECCOMP_FILTER
652                 default n
653                 help
654                   Build kernel with support for seccomp.
655
656 #
657 # IPv4 configuration
658 #
659
660 config KERNEL_IP_MROUTE
661         bool "Enable IPv4 multicast routing"
662         default y
663         help
664           Multicast routing requires a multicast routing daemon in
665           addition to kernel support.
666
667 #
668 # IPv6 configuration
669 #
670
671 config KERNEL_IPV6
672         def_bool IPV6
673
674 if KERNEL_IPV6
675
676         config KERNEL_IPV6_MULTIPLE_TABLES
677                 def_bool y
678
679         config KERNEL_IPV6_SUBTREES
680                 def_bool y
681
682         config KERNEL_IPV6_MROUTE
683                 bool "Enable IPv6 multicast routing"
684                 default y
685                 help
686                   Multicast routing requires a multicast routing daemon in
687                   addition to kernel support.
688
689         config KERNEL_IPV6_PIMSM_V2
690                 def_bool n
691
692 endif
693
694 #
695 # NFS related symbols
696 #
697 config KERNEL_IP_PNP
698         bool "Compile the kernel with rootfs on NFS"
699         help
700            If you want to make your kernel boot off a NFS server as root
701            filesystem, select Y here.
702
703 if KERNEL_IP_PNP
704
705         config KERNEL_IP_PNP_DHCP
706                 def_bool y
707
708         config KERNEL_IP_PNP_BOOTP
709                 def_bool n
710
711         config KERNEL_IP_PNP_RARP
712                 def_bool n
713
714         config KERNEL_NFS_FS
715                 def_bool y
716
717         config KERNEL_NFS_V2
718                 def_bool y
719
720         config KERNEL_NFS_V3
721                 def_bool y
722
723         config KERNEL_ROOT_NFS
724                 def_bool y
725
726 endif
727
728 menu "Filesystem ACL and attr support options"
729         config USE_FS_ACL_ATTR
730                 bool "Use filesystem ACL and attr support by default"
731                 default n
732                 help
733                   Make using ACLs (e.g. POSIX ACL, NFSv4 ACL) the default
734                   for kernel and packages, except tmpfs, flash filesystems,
735                   and old NFS.  Also enable userspace extended attribute support
736                   by default.  (libreCMC already has an expection it will be
737                   present in the kernel).
738
739         config KERNEL_FS_POSIX_ACL
740                 bool "Enable POSIX ACL support"
741                 default y if USE_FS_ACL_ATTR
742
743         config KERNEL_BTRFS_FS_POSIX_ACL
744                 bool "Enable POSIX ACL for BtrFS Filesystems"
745                 select KERNEL_FS_POSIX_ACL
746                 default y if USE_FS_ACL_ATTR
747
748         config KERNEL_EXT4_FS_POSIX_ACL
749                 bool "Enable POSIX ACL for Ext4 Filesystems"
750                 select KERNEL_FS_POSIX_ACL
751                 default y if USE_FS_ACL_ATTR
752
753         config KERNEL_F2FS_FS_POSIX_ACL
754                 bool "Enable POSIX ACL for F2FS Filesystems"
755                 select KERNEL_FS_POSIX_ACL
756                 default n
757
758         config KERNEL_JFFS2_FS_POSIX_ACL
759                 bool "Enable POSIX ACL for JFFS2 Filesystems"
760                 select KERNEL_FS_POSIX_ACL
761                 default n
762
763         config KERNEL_TMPFS_POSIX_ACL
764                 bool "Enable POSIX ACL for TMPFS Filesystems"
765                 select KERNEL_FS_POSIX_ACL
766                 default n
767
768         config KERNEL_CIFS_ACL
769                 bool "Enable CIFS ACLs"
770                 select KERNEL_FS_POSIX_ACL
771                 default y if USE_FS_ACL_ATTR
772
773         config KERNEL_HFS_FS_POSIX_ACL
774                 bool "Enable POSIX ACL for HFS Filesystems"
775                 select KERNEL_FS_POSIX_ACL
776                 default y if USE_FS_ACL_ATTR
777
778         config KERNEL_HFSPLUS_FS_POSIX_ACL
779                 bool "Enable POSIX ACL for HFS+ Filesystems"
780                 select KERNEL_FS_POSIX_ACL
781                 default y if USE_FS_ACL_ATTR
782
783         config KERNEL_NFS_ACL_SUPPORT
784                 bool "Enable ACLs for NFS"
785                 default y if USE_FS_ACL_ATTR
786
787         config KERNEL_NFS_V3_ACL_SUPPORT
788                 bool "Enable ACLs for NFSv3"
789                 default n
790
791         config KERNEL_NFSD_V2_ACL_SUPPORT
792                 bool "Enable ACLs for NFSDv2"
793                 default n
794
795         config KERNEL_NFSD_V3_ACL_SUPPORT
796                 bool "Enable ACLs for NFSDv3"
797                 default n
798
799         config KERNEL_REISER_FS_POSIX_ACL
800                 bool "Enable POSIX ACLs for ReiserFS"
801                 select KERNEL_FS_POSIX_ACL
802                 default y if USE_FS_ACL_ATTR
803
804         config KERNEL_XFS_POSIX_ACL
805                 bool "Enable POSIX ACLs for XFS"
806                 select KERNEL_FS_POSIX_ACL
807                 default y if USE_FS_ACL_ATTR
808
809         config KERNEL_JFS_POSIX_ACL
810                 bool "Enable POSIX ACLs for JFS"
811                 select KERNEL_FS_POSIX_ACL
812                 default y if USE_FS_ACL_ATTR
813
814 endmenu
815
816 config KERNEL_DEVMEM
817         bool "/dev/mem virtual device support"
818         help
819           Say Y here if you want to support the /dev/mem device.
820           The /dev/mem device is used to access areas of physical
821           memory.
822
823 config KERNEL_DEVKMEM
824         bool "/dev/kmem virtual device support"
825         help
826           Say Y here if you want to support the /dev/kmem device. The
827           /dev/kmem device is rarely used, but can be used for certain
828           kind of kernel debugging operations.
829
830 config KERNEL_SQUASHFS_FRAGMENT_CACHE_SIZE
831         int "Number of squashfs fragments cached"
832         default 2 if (SMALL_FLASH && !LOW_MEMORY_FOOTPRINT)
833         default 3
834
835 #
836 # compile optimiziation setting
837 #
838 choice
839         prompt "Compiler optimization level"
840         default KERNEL_CC_OPTIMIZE_FOR_SIZE if SMALL_FLASH
841
842 config KERNEL_CC_OPTIMIZE_FOR_PERFORMANCE
843         bool "Optimize for performance"
844         help
845           This is the default optimization level for the kernel, building
846           with the "-O2" compiler flag for best performance and most
847           helpful compile-time warnings.
848
849 config KERNEL_CC_OPTIMIZE_FOR_SIZE
850         bool "Optimize for size"
851         help
852           Enabling this option will pass "-Os" instead of "-O2" to
853           your compiler resulting in a smaller kernel.
854
855 endchoice