blob: 550dab22daa14b492d88258c9eb8ae7498d76ec1 [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
6 tristate "OProfile system profiling (EXPERIMENTAL)"
7 depends on PROFILING
8 depends on HAVE_OPROFILE
Ingo Molnard69d59f2008-12-12 09:38:57 +01009 select TRACING
10 select RING_BUFFER
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
Mathieu Desnoyers125e5642008-02-02 15:10:36 -050032config HAVE_OPROFILE
Jan Beulich9ba16082008-10-15 22:01:38 -070033 bool
Mathieu Desnoyers125e5642008-02-02 15:10:36 -050034
35config 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
Johannes Berg58340a02008-07-25 01:45:33 -070046config HAVE_EFFICIENT_UNALIGNED_ACCESS
Jan Beulich9ba16082008-10-15 22:01:38 -070047 bool
Johannes Berg58340a02008-07-25 01:45:33 -070048 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
Heiko Carstens1a94bc32009-01-14 14:13:59 +010065config HAVE_SYSCALL_WRAPPERS
66 bool
67
Ananth N Mavinakayanahalli9edddaa2008-03-04 14:28:37 -080068config KRETPROBES
69 def_bool y
70 depends on KPROBES && HAVE_KRETPROBES
71
Rik van Riel28b2ee22008-07-23 21:27:05 -070072config HAVE_IOREMAP_PROT
Jan Beulich9ba16082008-10-15 22:01:38 -070073 bool
Rik van Riel28b2ee22008-07-23 21:27:05 -070074
Mathieu Desnoyers125e5642008-02-02 15:10:36 -050075config HAVE_KPROBES
Jan Beulich9ba16082008-10-15 22:01:38 -070076 bool
Ananth N Mavinakayanahalli9edddaa2008-03-04 14:28:37 -080077
78config HAVE_KRETPROBES
Jan Beulich9ba16082008-10-15 22:01:38 -070079 bool
Arthur Kepner74bc7ce2008-04-29 01:00:30 -070080
Roland McGrath1f5a4ad2008-07-25 19:45:57 -070081#
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
Roland McGrath1f5a4ad2008-07-25 19:45:57 -070087# 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#
94config HAVE_ARCH_TRACEHOOK
Jan Beulich9ba16082008-10-15 22:01:38 -070095 bool
Roland McGrath1f5a4ad2008-07-25 19:45:57 -070096
Arthur Kepner74bc7ce2008-04-29 01:00:30 -070097config HAVE_DMA_ATTRS
Jan Beulich9ba16082008-10-15 22:01:38 -070098 bool
Jens Axboe3d442232008-06-26 11:21:34 +020099
100config USE_GENERIC_SMP_HELPERS
Jan Beulich9ba16082008-10-15 22:01:38 -0700101 bool
David Brownell9483a572008-07-23 21:26:48 -0700102
103config HAVE_CLK
Jan Beulich9ba16082008-10-15 22:01:38 -0700104 bool
David Brownell9483a572008-07-23 21:26:48 -0700105 help
106 The <linux/clk.h> calls support software clock gating and
107 thus are a key power management tool on many systems.
108