blob: d677872418131ca35cc20f077534db9c06bf8ec9 [file] [log] [blame]
Mathieu Desnoyersfb32e032008-02-02 15:10:33 -05001#
2# General architecture dependent options
3#
Mathieu Desnoyers125e5642008-02-02 15:10:36 -05004
5config OPROFILE
Robert Richterb309a292010-02-26 15:01:23 +01006 tristate "OProfile system profiling"
Mathieu Desnoyers125e5642008-02-02 15:10:36 -05007 depends on PROFILING
8 depends on HAVE_OPROFILE
Ingo Molnard69d59f2008-12-12 09:38:57 +01009 select RING_BUFFER
Christian Borntraeger9a5963e2009-09-16 21:56:49 +020010 select RING_BUFFER_ALLOW_SWAP
Mathieu Desnoyers125e5642008-02-02 15:10:36 -050011 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
Robert Richter852402c2008-07-22 21:09:06 +020018config 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
Jesper Dangaard Brouerba8b4532008-10-24 15:05:12 +020026 (AMD Opteron Quad-Core processor "Barcelona") to overcome
Robert Richter852402c2008-07-22 21:09:06 +020027 the limitations of conventional performance counter
28 sampling.
29
30 If unsure, say N.
31
Jason Yeh4d4036e2009-07-08 13:49:38 +020032config OPROFILE_EVENT_MULTIPLEX
33 bool "OProfile multiplexing support (EXPERIMENTAL)"
34 default n
35 depends on OPROFILE && X86
36 help
37 The number of hardware counters is limited. The multiplexing
38 feature enables OProfile to gather more events than counters
39 are provided by the hardware. This is realized by switching
40 between events at an user specified time interval.
41
42 If unsure, say N.
43
Mathieu Desnoyers125e5642008-02-02 15:10:36 -050044config HAVE_OPROFILE
Jan Beulich9ba16082008-10-15 22:01:38 -070045 bool
Mathieu Desnoyers125e5642008-02-02 15:10:36 -050046
47config KPROBES
48 bool "Kprobes"
49 depends on KALLSYMS && MODULES
50 depends on HAVE_KPROBES
51 help
52 Kprobes allows you to trap at almost any kernel address and
53 execute a callback function. register_kprobe() establishes
54 a probepoint and specifies the callback. Kprobes is useful
55 for kernel debugging, non-intrusive instrumentation and testing.
56 If in doubt, say "N".
57
Johannes Berg58340a02008-07-25 01:45:33 -070058config HAVE_EFFICIENT_UNALIGNED_ACCESS
Jan Beulich9ba16082008-10-15 22:01:38 -070059 bool
Johannes Berg58340a02008-07-25 01:45:33 -070060 help
61 Some architectures are unable to perform unaligned accesses
62 without the use of get_unaligned/put_unaligned. Others are
63 unable to perform such accesses efficiently (e.g. trap on
64 unaligned access and require fixing it up in the exception
65 handler.)
66
67 This symbol should be selected by an architecture if it can
68 perform unaligned accesses efficiently to allow different
69 code paths to be selected for these cases. Some network
70 drivers, for example, could opt to not fix up alignment
71 problems with received packets if doing so would not help
72 much.
73
74 See Documentation/unaligned-memory-access.txt for more
75 information on the topic of unaligned memory accesses.
76
Heiko Carstens1a94bc32009-01-14 14:13:59 +010077config HAVE_SYSCALL_WRAPPERS
78 bool
79
Ananth N Mavinakayanahalli9edddaa2008-03-04 14:28:37 -080080config KRETPROBES
81 def_bool y
82 depends on KPROBES && HAVE_KRETPROBES
83
Avi Kivity7c68af62009-09-19 09:40:22 +030084config USER_RETURN_NOTIFIER
85 bool
86 depends on HAVE_USER_RETURN_NOTIFIER
87 help
88 Provide a kernel-internal notification when a cpu is about to
89 switch to user mode.
90
Rik van Riel28b2ee22008-07-23 21:27:05 -070091config HAVE_IOREMAP_PROT
Jan Beulich9ba16082008-10-15 22:01:38 -070092 bool
Rik van Riel28b2ee22008-07-23 21:27:05 -070093
Mathieu Desnoyers125e5642008-02-02 15:10:36 -050094config HAVE_KPROBES
Jan Beulich9ba16082008-10-15 22:01:38 -070095 bool
Ananth N Mavinakayanahalli9edddaa2008-03-04 14:28:37 -080096
97config HAVE_KRETPROBES
Jan Beulich9ba16082008-10-15 22:01:38 -070098 bool
Arthur Kepner74bc7ce2008-04-29 01:00:30 -070099
Roland McGrath1f5a4ad2008-07-25 19:45:57 -0700100#
101# An arch should select this if it provides all these things:
102#
103# task_pt_regs() in asm/processor.h or asm/ptrace.h
104# arch_has_single_step() if there is hardware single-step support
105# arch_has_block_step() if there is hardware block-step support
Roland McGrath1f5a4ad2008-07-25 19:45:57 -0700106# asm/syscall.h supplying asm-generic/syscall.h interface
107# linux/regset.h user_regset interfaces
108# CORE_DUMP_USE_REGSET #define'd in linux/elf.h
109# TIF_SYSCALL_TRACE calls tracehook_report_syscall_{entry,exit}
110# TIF_NOTIFY_RESUME calls tracehook_notify_resume()
111# signal delivery calls tracehook_signal_handler()
112#
113config HAVE_ARCH_TRACEHOOK
Jan Beulich9ba16082008-10-15 22:01:38 -0700114 bool
Roland McGrath1f5a4ad2008-07-25 19:45:57 -0700115
Arthur Kepner74bc7ce2008-04-29 01:00:30 -0700116config HAVE_DMA_ATTRS
Jan Beulich9ba16082008-10-15 22:01:38 -0700117 bool
Jens Axboe3d442232008-06-26 11:21:34 +0200118
119config USE_GENERIC_SMP_HELPERS
Jan Beulich9ba16082008-10-15 22:01:38 -0700120 bool
David Brownell9483a572008-07-23 21:26:48 -0700121
122config HAVE_CLK
Jan Beulich9ba16082008-10-15 22:01:38 -0700123 bool
David Brownell9483a572008-07-23 21:26:48 -0700124 help
125 The <linux/clk.h> calls support software clock gating and
126 thus are a key power management tool on many systems.
127
Joerg Roedel5ee00bd2009-01-09 12:14:24 +0100128config HAVE_DMA_API_DEBUG
129 bool
Heiko Carstens36cd3c92009-04-09 18:48:34 +0200130
131config HAVE_DEFAULT_NO_SPIN_MUTEXES
132 bool
K.Prasad62a038d2009-06-01 23:43:33 +0530133
134config HAVE_HW_BREAKPOINT
135 bool
Frederic Weisbecker99e8c5a2009-12-17 01:33:54 +0100136 depends on PERF_EVENTS
K.Prasad62a038d2009-06-01 23:43:33 +0530137
Avi Kivity7c68af62009-09-19 09:40:22 +0300138config HAVE_USER_RETURN_NOTIFIER
139 bool
Ingo Molnara1922ed2009-09-07 08:19:51 +0200140
Peter Oberparleiter2521f2c2009-06-17 16:28:08 -0700141source "kernel/gcov/Kconfig"