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