]> pilppa.org Git - linux-2.6-omap-h63xx.git/blob - arch/x86_64/Kconfig
x86_64: Select clocksource watchdog in Kconfig
[linux-2.6-omap-h63xx.git] / arch / x86_64 / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5 # Note: ISA is disabled and will hopefully never be enabled.
6 # If you managed to buy an ISA x86-64 box you'll have to fix all the
7 # ISA drivers you need yourself.
8 #
9
10 mainmenu "Linux Kernel Configuration"
11
12 config X86_64
13         bool
14         default y
15         help
16           Port to the x86-64 architecture. x86-64 is a 64-bit extension to the
17           classical 32-bit x86 architecture. For details see
18           <http://www.x86-64.org/>.
19
20 config 64BIT
21         def_bool y
22
23 config X86
24         bool
25         default y
26
27 config GENERIC_TIME
28         bool
29         default y
30
31 config GENERIC_TIME_VSYSCALL
32         bool
33         default y
34
35 config GENERIC_CMOS_UPDATE
36         bool
37         default y
38
39 config CLOCKSOURCE_WATCHDOG
40         bool
41         default y
42
43 config ZONE_DMA32
44         bool
45         default y
46
47 config LOCKDEP_SUPPORT
48         bool
49         default y
50
51 config STACKTRACE_SUPPORT
52         bool
53         default y
54
55 config SEMAPHORE_SLEEPERS
56         bool
57         default y
58
59 config MMU
60         bool
61         default y
62
63 config ZONE_DMA
64         bool
65         default y
66
67 config ISA
68         bool
69
70 config SBUS
71         bool
72
73 config RWSEM_GENERIC_SPINLOCK
74         bool
75         default y
76
77 config RWSEM_XCHGADD_ALGORITHM
78         bool
79
80 config GENERIC_HWEIGHT
81         bool
82         default y
83
84 config GENERIC_CALIBRATE_DELAY
85         bool
86         default y
87
88 config X86_CMPXCHG
89         bool
90         default y
91
92 config EARLY_PRINTK
93         bool
94         default y
95
96 config GENERIC_ISA_DMA
97         bool
98         default y
99
100 config GENERIC_IOMAP
101         bool
102         default y
103
104 config ARCH_MAY_HAVE_PC_FDC
105         bool
106         default y
107
108 config ARCH_POPULATES_NODE_MAP
109         def_bool y
110
111 config DMI
112         bool
113         default y
114
115 config AUDIT_ARCH
116         bool
117         default y
118
119 config GENERIC_BUG
120         bool
121         default y
122         depends on BUG
123
124 config ARCH_HAS_ILOG2_U32
125         bool
126         default n
127
128 config ARCH_HAS_ILOG2_U64
129         bool
130         default n
131
132 source "init/Kconfig"
133
134
135 menu "Processor type and features"
136
137 choice
138         prompt "Subarchitecture Type"
139         default X86_PC
140
141 config X86_PC
142         bool "PC-compatible"
143         help
144           Choose this option if your computer is a standard PC or compatible.
145
146 config X86_VSMP
147         bool "Support for ScaleMP vSMP"
148         depends on PCI
149          help
150           Support for ScaleMP vSMP systems.  Say 'Y' here if this kernel is
151           supposed to run on these EM64T-based machines.  Only choose this option
152           if you have one of these machines.
153
154 endchoice
155
156 choice
157         prompt "Processor family"
158         default GENERIC_CPU
159
160 config MK8
161         bool "AMD-Opteron/Athlon64"
162         help
163           Optimize for AMD Opteron/Athlon64/Hammer/K8 CPUs.
164
165 config MPSC
166        bool "Intel P4 / older Netburst based Xeon"
167        help
168           Optimize for Intel Pentium 4 and older Nocona/Dempsey Xeon CPUs
169           with Intel Extended Memory 64 Technology(EM64T). For details see
170           <http://www.intel.com/technology/64bitextensions/>.
171           Note that the latest Xeons (Xeon 51xx and 53xx) are not based on the
172           Netburst core and shouldn't use this option. You can distinguish them
173           using the cpu family field
174           in /proc/cpuinfo. Family 15 is an older Xeon, Family 6 a newer one
175           (this rule only applies to systems that support EM64T)
176
177 config MCORE2
178         bool "Intel Core2 / newer Xeon"
179         help
180           Optimize for Intel Core2 and newer Xeons (51xx)
181           You can distinguish the newer Xeons from the older ones using
182           the cpu family field in /proc/cpuinfo. 15 is an older Xeon
183           (use CONFIG_MPSC then), 6 is a newer one. This rule only
184           applies to CPUs that support EM64T.
185
186 config GENERIC_CPU
187         bool "Generic-x86-64"
188         help
189           Generic x86-64 CPU.
190           Run equally well on all x86-64 CPUs.
191
192 endchoice
193
194 #
195 # Define implied options from the CPU selection here
196 #
197 config X86_L1_CACHE_BYTES
198         int
199         default "128" if GENERIC_CPU || MPSC
200         default "64" if MK8 || MCORE2
201
202 config X86_L1_CACHE_SHIFT
203         int
204         default "7" if GENERIC_CPU || MPSC
205         default "6" if MK8 || MCORE2
206
207 config X86_INTERNODE_CACHE_BYTES
208         int
209         default "4096" if X86_VSMP
210         default X86_L1_CACHE_BYTES if !X86_VSMP
211
212 config X86_TSC
213         bool
214         default y
215
216 config X86_GOOD_APIC
217         bool
218         default y
219
220 config MICROCODE
221         tristate "/dev/cpu/microcode - Intel CPU microcode support"
222         select FW_LOADER
223         ---help---
224           If you say Y here the 'File systems' section, you will be
225           able to update the microcode on Intel processors. You will
226           obviously need the actual microcode binary data itself which is
227           not shipped with the Linux kernel.
228
229           For latest news and information on obtaining all the required
230           ingredients for this driver, check:
231           <http://www.urbanmyth.org/microcode/>.
232
233           To compile this driver as a module, choose M here: the
234           module will be called microcode.
235           If you use modprobe or kmod you may also want to add the line
236           'alias char-major-10-184 microcode' to your /etc/modules.conf file.
237
238 config MICROCODE_OLD_INTERFACE
239         bool
240         depends on MICROCODE
241         default y
242
243 config X86_MSR
244         tristate "/dev/cpu/*/msr - Model-specific register support"
245         help
246           This device gives privileged processes access to the x86
247           Model-Specific Registers (MSRs).  It is a character device with
248           major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr.
249           MSR accesses are directed to a specific CPU on multi-processor
250           systems.
251
252 config X86_CPUID
253         tristate "/dev/cpu/*/cpuid - CPU information support"
254         help
255           This device gives processes access to the x86 CPUID instruction to
256           be executed on a specific processor.  It is a character device
257           with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to
258           /dev/cpu/31/cpuid.
259
260 config X86_HT
261         bool
262         depends on SMP && !MK8
263         default y
264
265 config MATH_EMULATION
266         bool
267
268 config MCA
269         bool
270
271 config EISA
272         bool
273
274 config X86_IO_APIC
275         bool
276         default y
277
278 config X86_LOCAL_APIC
279         bool
280         default y
281
282 config MTRR
283         bool "MTRR (Memory Type Range Register) support"
284         ---help---
285           On Intel P6 family processors (Pentium Pro, Pentium II and later)
286           the Memory Type Range Registers (MTRRs) may be used to control
287           processor access to memory ranges. This is most useful if you have
288           a video (VGA) card on a PCI or AGP bus. Enabling write-combining
289           allows bus write transfers to be combined into a larger transfer
290           before bursting over the PCI/AGP bus. This can increase performance
291           of image write operations 2.5 times or more. Saying Y here creates a
292           /proc/mtrr file which may be used to manipulate your processor's
293           MTRRs. Typically the X server should use this.
294
295           This code has a reasonably generic interface so that similar
296           control registers on other processors can be easily supported
297           as well.
298
299           Saying Y here also fixes a problem with buggy SMP BIOSes which only
300           set the MTRRs for the boot CPU and not for the secondary CPUs. This
301           can lead to all sorts of problems, so it's good to say Y here.
302
303           Just say Y here, all x86-64 machines support MTRRs.
304
305           See <file:Documentation/mtrr.txt> for more information.
306
307 config SMP
308         bool "Symmetric multi-processing support"
309         ---help---
310           This enables support for systems with more than one CPU. If you have
311           a system with only one CPU, like most personal computers, say N. If
312           you have a system with more than one CPU, say Y.
313
314           If you say N here, the kernel will run on single and multiprocessor
315           machines, but will use only one CPU of a multiprocessor machine. If
316           you say Y here, the kernel will run on many, but not all,
317           singleprocessor machines. On a singleprocessor machine, the kernel
318           will run faster if you say N here.
319
320           If you don't know what to do here, say N.
321
322 config SCHED_SMT
323         bool "SMT (Hyperthreading) scheduler support"
324         depends on SMP
325         default n
326         help
327           SMT scheduler support improves the CPU scheduler's decision making
328           when dealing with Intel Pentium 4 chips with HyperThreading at a
329           cost of slightly increased overhead in some places. If unsure say
330           N here.
331
332 config SCHED_MC
333         bool "Multi-core scheduler support"
334         depends on SMP
335         default y
336         help
337           Multi-core scheduler support improves the CPU scheduler's decision
338           making when dealing with multi-core CPU chips at a cost of slightly
339           increased overhead in some places. If unsure say N here.
340
341 source "kernel/Kconfig.preempt"
342
343 config NUMA
344        bool "Non Uniform Memory Access (NUMA) Support"
345        depends on SMP
346        help
347          Enable NUMA (Non Uniform Memory Access) support. The kernel 
348          will try to allocate memory used by a CPU on the local memory 
349          controller of the CPU and add some more NUMA awareness to the kernel.
350          This code is recommended on all multiprocessor Opteron systems.
351          If the system is EM64T, you should say N unless your system is EM64T 
352          NUMA. 
353
354 config K8_NUMA
355        bool "Old style AMD Opteron NUMA detection"
356        depends on NUMA && PCI
357        default y
358        help
359          Enable K8 NUMA node topology detection.  You should say Y here if
360          you have a multi processor AMD K8 system. This uses an old
361          method to read the NUMA configuration directly from the builtin
362          Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA
363          instead, which also takes priority if both are compiled in.   
364
365 config NODES_SHIFT
366         int
367         default "6"
368         depends on NEED_MULTIPLE_NODES
369
370 # Dummy CONFIG option to select ACPI_NUMA from drivers/acpi/Kconfig.
371
372 config X86_64_ACPI_NUMA
373        bool "ACPI NUMA detection"
374        depends on NUMA
375        select ACPI 
376         select PCI
377        select ACPI_NUMA
378        default y
379        help
380          Enable ACPI SRAT based node topology detection.
381
382 config NUMA_EMU
383         bool "NUMA emulation"
384         depends on NUMA
385         help
386           Enable NUMA emulation. A flat machine will be split
387           into virtual nodes when booted with "numa=fake=N", where N is the
388           number of nodes. This is only useful for debugging.
389
390 config ARCH_DISCONTIGMEM_ENABLE
391        bool
392        depends on NUMA
393        default y
394
395 config ARCH_DISCONTIGMEM_DEFAULT
396         def_bool y
397         depends on NUMA
398
399 config ARCH_SPARSEMEM_ENABLE
400         def_bool y
401         depends on (NUMA || EXPERIMENTAL)
402
403 config ARCH_MEMORY_PROBE
404         def_bool y
405         depends on MEMORY_HOTPLUG
406
407 config ARCH_FLATMEM_ENABLE
408         def_bool y
409         depends on !NUMA
410
411 source "mm/Kconfig"
412
413 config MEMORY_HOTPLUG_RESERVE
414         def_bool y
415         depends on (MEMORY_HOTPLUG && DISCONTIGMEM)
416
417 config HAVE_ARCH_EARLY_PFN_TO_NID
418         def_bool y
419         depends on NUMA
420
421 config OUT_OF_LINE_PFN_TO_PAGE
422         def_bool y
423         depends on DISCONTIGMEM
424
425 config NR_CPUS
426         int "Maximum number of CPUs (2-255)"
427         range 2 255
428         depends on SMP
429         default "8"
430         help
431           This allows you to specify the maximum number of CPUs which this
432           kernel will support. Current maximum is 255 CPUs due to
433           APIC addressing limits. Less depending on the hardware.
434
435           This is purely to save memory - each supported CPU requires
436           memory in the static kernel configuration.
437
438 config PHYSICAL_ALIGN
439         hex
440         default "0x200000"
441
442 config HOTPLUG_CPU
443         bool "Support for suspend on SMP and hot-pluggable CPUs (EXPERIMENTAL)"
444         depends on SMP && HOTPLUG && EXPERIMENTAL
445         help
446                 Say Y here to experiment with turning CPUs off and on.  CPUs
447                 can be controlled through /sys/devices/system/cpu/cpu#.
448                 This is also required for suspend/hibernation on SMP systems.
449
450                 Say N if you want to disable CPU hotplug and don't need to
451                 suspend.
452
453 config ARCH_ENABLE_MEMORY_HOTPLUG
454         def_bool y
455
456 config HPET_TIMER
457         bool
458         default y
459         help
460           Use the IA-PC HPET (High Precision Event Timer) to manage
461           time in preference to the PIT and RTC, if a HPET is
462           present.  The HPET provides a stable time base on SMP
463           systems, unlike the TSC, but it is more expensive to access,
464           as it is off-chip.  You can find the HPET spec at
465           <http://www.intel.com/hardwaredesign/hpetspec.htm>.
466
467 config HPET_EMULATE_RTC
468         bool "Provide RTC interrupt"
469         depends on HPET_TIMER && RTC=y
470
471 # Mark as embedded because too many people got it wrong.
472 # The code disables itself when not needed.
473 config IOMMU
474         bool "IOMMU support" if EMBEDDED
475         default y
476         select SWIOTLB
477         select AGP
478         depends on PCI
479         help
480           Support for full DMA access of devices with 32bit memory access only
481           on systems with more than 3GB. This is usually needed for USB,
482           sound, many IDE/SATA chipsets and some other devices.
483           Provides a driver for the AMD Athlon64/Opteron/Turion/Sempron GART
484           based hardware IOMMU and a software bounce buffer based IOMMU used
485           on Intel systems and as fallback.
486           The code is only active when needed (enough memory and limited
487           device) unless CONFIG_IOMMU_DEBUG or iommu=force is specified
488           too.
489
490 config CALGARY_IOMMU
491         bool "IBM Calgary IOMMU support"
492         select SWIOTLB
493         depends on PCI && EXPERIMENTAL
494         help
495           Support for hardware IOMMUs in IBM's xSeries x366 and x460
496           systems. Needed to run systems with more than 3GB of memory
497           properly with 32-bit PCI devices that do not support DAC
498           (Double Address Cycle). Calgary also supports bus level
499           isolation, where all DMAs pass through the IOMMU.  This
500           prevents them from going anywhere except their intended
501           destination. This catches hard-to-find kernel bugs and
502           mis-behaving drivers and devices that do not use the DMA-API
503           properly to set up their DMA buffers.  The IOMMU can be
504           turned off at boot time with the iommu=off parameter.
505           Normally the kernel will make the right choice by itself.
506           If unsure, say Y.
507
508 config CALGARY_IOMMU_ENABLED_BY_DEFAULT
509         bool "Should Calgary be enabled by default?"
510         default y
511         depends on CALGARY_IOMMU
512         help
513           Should Calgary be enabled by default? if you choose 'y', Calgary
514           will be used (if it exists). If you choose 'n', Calgary will not be
515           used even if it exists. If you choose 'n' and would like to use
516           Calgary anyway, pass 'iommu=calgary' on the kernel command line.
517           If unsure, say Y.
518
519 # need this always selected by IOMMU for the VIA workaround
520 config SWIOTLB
521         bool
522         help
523           Support for software bounce buffers used on x86-64 systems
524           which don't have a hardware IOMMU (e.g. the current generation
525           of Intel's x86-64 CPUs). Using this PCI devices which can only
526           access 32-bits of memory can be used on systems with more than
527           3 GB of memory. If unsure, say Y.
528
529 config X86_MCE
530         bool "Machine check support" if EMBEDDED
531         default y
532         help
533            Include a machine check error handler to report hardware errors.
534            This version will require the mcelog utility to decode some
535            machine check error logs. See
536            ftp://ftp.x86-64.org/pub/linux/tools/mcelog
537
538 config X86_MCE_INTEL
539         bool "Intel MCE features"
540         depends on X86_MCE && X86_LOCAL_APIC
541         default y
542         help
543            Additional support for intel specific MCE features such as
544            the thermal monitor.
545
546 config X86_MCE_AMD
547         bool "AMD MCE features"
548         depends on X86_MCE && X86_LOCAL_APIC
549         default y
550         help
551            Additional support for AMD specific MCE features such as
552            the DRAM Error Threshold.
553
554 config KEXEC
555         bool "kexec system call"
556         help
557           kexec is a system call that implements the ability to shutdown your
558           current kernel, and to start another kernel.  It is like a reboot
559           but it is independent of the system firmware.   And like a reboot
560           you can start any kernel with it, not just Linux.
561
562           The name comes from the similarity to the exec system call.
563
564           It is an ongoing process to be certain the hardware in a machine
565           is properly shutdown, so do not be surprised if this code does not
566           initially work for you.  It may help to enable device hotplugging
567           support.  As of this writing the exact hardware interface is
568           strongly in flux, so no good recommendation can be made.
569
570 config CRASH_DUMP
571         bool "kernel crash dumps (EXPERIMENTAL)"
572         depends on EXPERIMENTAL
573         help
574           Generate crash dump after being started by kexec.
575           This should be normally only set in special crash dump kernels
576           which are loaded in the main kernel with kexec-tools into
577           a specially reserved region and then later executed after
578           a crash by kdump/kexec. The crash dump kernel must be compiled
579           to a memory address not used by the main kernel or BIOS using
580           PHYSICAL_START.
581           For more details see Documentation/kdump/kdump.txt
582
583 config RELOCATABLE
584         bool "Build a relocatable kernel(EXPERIMENTAL)"
585         depends on EXPERIMENTAL
586         help
587           Builds a relocatable kernel. This enables loading and running
588           a kernel binary from a different physical address than it has
589           been compiled for.
590
591           One use is for the kexec on panic case where the recovery kernel
592           must live at a different physical address than the primary
593           kernel.
594
595           Note: If CONFIG_RELOCATABLE=y, then kernel run from the address
596           it has been loaded at and compile time physical address
597           (CONFIG_PHYSICAL_START) is ignored.
598
599 config PHYSICAL_START
600         hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP)
601         default "0x200000"
602         help
603           This gives the physical address where the kernel is loaded. It
604           should be aligned to 2MB boundary.
605
606           If kernel is a not relocatable (CONFIG_RELOCATABLE=n) then
607           bzImage will decompress itself to above physical address and
608           run from there. Otherwise, bzImage will run from the address where
609           it has been loaded by the boot loader and will ignore above physical
610           address.
611
612           In normal kdump cases one does not have to set/change this option
613           as now bzImage can be compiled as a completely relocatable image
614           (CONFIG_RELOCATABLE=y) and be used to load and run from a different
615           address. This option is mainly useful for the folks who don't want
616           to use a bzImage for capturing the crash dump and want to use a
617           vmlinux instead.
618
619           So if you are using bzImage for capturing the crash dump, leave
620           the value here unchanged to 0x200000 and set CONFIG_RELOCATABLE=y.
621           Otherwise if you plan to use vmlinux for capturing the crash dump
622           change this value to start of the reserved region (Typically 16MB
623           0x1000000). In other words, it can be set based on the "X" value as
624           specified in the "crashkernel=YM@XM" command line boot parameter
625           passed to the panic-ed kernel. Typically this parameter is set as
626           crashkernel=64M@16M. Please take a look at
627           Documentation/kdump/kdump.txt for more details about crash dumps.
628
629           Usage of bzImage for capturing the crash dump is advantageous as
630           one does not have to build two kernels. Same kernel can be used
631           as production kernel and capture kernel.
632
633           Don't change this unless you know what you are doing.
634
635 config SECCOMP
636         bool "Enable seccomp to safely compute untrusted bytecode"
637         depends on PROC_FS
638         default y
639         help
640           This kernel feature is useful for number crunching applications
641           that may need to compute untrusted bytecode during their
642           execution. By using pipes or other transports made available to
643           the process as file descriptors supporting the read/write
644           syscalls, it's possible to isolate those applications in
645           their own address space using seccomp. Once seccomp is
646           enabled via /proc/<pid>/seccomp, it cannot be disabled
647           and the task is only allowed to execute a few safe syscalls
648           defined by each seccomp mode.
649
650           If unsure, say Y. Only embedded should say N here.
651
652 config CC_STACKPROTECTOR
653         bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
654         depends on EXPERIMENTAL
655         help
656          This option turns on the -fstack-protector GCC feature. This
657           feature puts, at the beginning of critical functions, a canary
658           value on the stack just before the return address, and validates
659           the value just before actually returning.  Stack based buffer
660           overflows (that need to overwrite this return address) now also
661           overwrite the canary, which gets detected and the attack is then
662           neutralized via a kernel panic.
663
664           This feature requires gcc version 4.2 or above, or a distribution
665           gcc with the feature backported. Older versions are automatically
666           detected and for those versions, this configuration option is ignored.
667
668 config CC_STACKPROTECTOR_ALL
669         bool "Use stack-protector for all functions"
670         depends on CC_STACKPROTECTOR
671         help
672           Normally, GCC only inserts the canary value protection for
673           functions that use large-ish on-stack buffers. By enabling
674           this option, GCC will be asked to do this for ALL functions.
675
676 source kernel/Kconfig.hz
677
678 config K8_NB
679         def_bool y
680         depends on AGP_AMD64 || IOMMU || (PCI && NUMA)
681
682 endmenu
683
684 #
685 # Use the generic interrupt handling code in kernel/irq/:
686 #
687 config GENERIC_HARDIRQS
688         bool
689         default y
690
691 config GENERIC_IRQ_PROBE
692         bool
693         default y
694
695 # we have no ISA slots, but we do have ISA-style DMA.
696 config ISA_DMA_API
697         bool
698         default y
699
700 config GENERIC_PENDING_IRQ
701         bool
702         depends on GENERIC_HARDIRQS && SMP
703         default y
704
705 menu "Power management options"
706
707 source kernel/power/Kconfig
708
709 source "drivers/acpi/Kconfig"
710
711 source "arch/x86/kernel/cpufreq/Kconfig"
712
713 endmenu
714
715 menu "Bus options (PCI etc.)"
716
717 config PCI
718         bool "PCI support"
719         select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC)
720
721 # x86-64 doesn't support PCI BIOS access from long mode so always go direct.
722 config PCI_DIRECT
723         bool
724         depends on PCI
725         default y
726
727 config PCI_MMCONFIG
728         bool "Support mmconfig PCI config space access"
729         depends on PCI && ACPI
730
731 source "drivers/pci/pcie/Kconfig"
732
733 source "drivers/pci/Kconfig"
734
735 source "drivers/pcmcia/Kconfig"
736
737 source "drivers/pci/hotplug/Kconfig"
738
739 endmenu
740
741
742 menu "Executable file formats / Emulations"
743
744 source "fs/Kconfig.binfmt"
745
746 config IA32_EMULATION
747         bool "IA32 Emulation"
748         help
749           Include code to run 32-bit programs under a 64-bit kernel. You should likely
750           turn this on, unless you're 100% sure that you don't have any 32-bit programs
751           left.
752
753 config IA32_AOUT
754        tristate "IA32 a.out support"
755        depends on IA32_EMULATION
756        help
757          Support old a.out binaries in the 32bit emulation.
758
759 config COMPAT
760         bool
761         depends on IA32_EMULATION
762         default y
763
764 config COMPAT_FOR_U64_ALIGNMENT
765         def_bool COMPAT
766
767 config SYSVIPC_COMPAT
768         bool
769         depends on COMPAT && SYSVIPC
770         default y
771
772 endmenu
773
774 source "net/Kconfig"
775
776 source drivers/Kconfig
777
778 source "drivers/firmware/Kconfig"
779
780 source fs/Kconfig
781
782 menu "Instrumentation Support"
783         depends on EXPERIMENTAL
784
785 source "arch/x86/oprofile/Kconfig"
786
787 config KPROBES
788         bool "Kprobes"
789         depends on KALLSYMS && MODULES
790         help
791           Kprobes allows you to trap at almost any kernel address and
792           execute a callback function.  register_kprobe() establishes
793           a probepoint and specifies the callback.  Kprobes is useful
794           for kernel debugging, non-intrusive instrumentation and testing.
795           If in doubt, say "N".
796 endmenu
797
798 source "arch/x86_64/Kconfig.debug"
799
800 source "security/Kconfig"
801
802 source "crypto/Kconfig"
803
804 source "lib/Kconfig"