Merge branch 'tip/tracing/ftrace' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6] / arch / Kconfig
1 #
2 # General architecture dependent options
3 #
4
5 config OPROFILE
6         tristate "OProfile system profiling (EXPERIMENTAL)"
7         depends on PROFILING
8         depends on HAVE_OPROFILE
9         select TRACING
10         select RING_BUFFER
11         help
12           OProfile is a profiling system capable of profiling the
13           whole system, include the kernel, kernel modules, libraries,
14           and applications.
15
16           If unsure, say N.
17
18 config OPROFILE_IBS
19         bool "OProfile AMD IBS support (EXPERIMENTAL)"
20         default n
21         depends on OPROFILE && SMP && X86
22         help
23           Instruction-Based Sampling (IBS) is a new profiling
24           technique that provides rich, precise program performance
25           information. IBS is introduced by AMD Family10h processors
26           (AMD Opteron Quad-Core processor "Barcelona") to overcome
27           the limitations of conventional performance counter
28           sampling.
29
30           If unsure, say N.
31
32 config HAVE_OPROFILE
33         bool
34
35 config KPROBES
36         bool "Kprobes"
37         depends on KALLSYMS && MODULES
38         depends on HAVE_KPROBES
39         help
40           Kprobes allows you to trap at almost any kernel address and
41           execute a callback function.  register_kprobe() establishes
42           a probepoint and specifies the callback.  Kprobes is useful
43           for kernel debugging, non-intrusive instrumentation and testing.
44           If in doubt, say "N".
45
46 config HAVE_EFFICIENT_UNALIGNED_ACCESS
47         bool
48         help
49           Some architectures are unable to perform unaligned accesses
50           without the use of get_unaligned/put_unaligned. Others are
51           unable to perform such accesses efficiently (e.g. trap on
52           unaligned access and require fixing it up in the exception
53           handler.)
54
55           This symbol should be selected by an architecture if it can
56           perform unaligned accesses efficiently to allow different
57           code paths to be selected for these cases. Some network
58           drivers, for example, could opt to not fix up alignment
59           problems with received packets if doing so would not help
60           much.
61
62           See Documentation/unaligned-memory-access.txt for more
63           information on the topic of unaligned memory accesses.
64
65 config HAVE_SYSCALL_WRAPPERS
66         bool
67
68 config KRETPROBES
69         def_bool y
70         depends on KPROBES && HAVE_KRETPROBES
71
72 config HAVE_IOREMAP_PROT
73         bool
74
75 config HAVE_KPROBES
76         bool
77
78 config HAVE_KRETPROBES
79         bool
80
81 #
82 # An arch should select this if it provides all these things:
83 #
84 #       task_pt_regs()          in asm/processor.h or asm/ptrace.h
85 #       arch_has_single_step()  if there is hardware single-step support
86 #       arch_has_block_step()   if there is hardware block-step support
87 #       asm/syscall.h           supplying asm-generic/syscall.h interface
88 #       linux/regset.h          user_regset interfaces
89 #       CORE_DUMP_USE_REGSET    #define'd in linux/elf.h
90 #       TIF_SYSCALL_TRACE       calls tracehook_report_syscall_{entry,exit}
91 #       TIF_NOTIFY_RESUME       calls tracehook_notify_resume()
92 #       signal delivery         calls tracehook_signal_handler()
93 #
94 config HAVE_ARCH_TRACEHOOK
95         bool
96
97 config HAVE_DMA_ATTRS
98         bool
99
100 config USE_GENERIC_SMP_HELPERS
101         bool
102
103 config HAVE_CLK
104         bool
105         help
106           The <linux/clk.h> calls support software clock gating and
107           thus are a key power management tool on many systems.
108