blob: 2e13aa261929fd3a3689c41b0bfe6dcdf9805d5c [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
Ananth N Mavinakayanahalli9edddaa2008-03-04 14:28:37 -080065config KRETPROBES
66 def_bool y
67 depends on KPROBES && HAVE_KRETPROBES
68
Rik van Riel28b2ee22008-07-23 21:27:05 -070069config HAVE_IOREMAP_PROT
Jan Beulich9ba16082008-10-15 22:01:38 -070070 bool
Rik van Riel28b2ee22008-07-23 21:27:05 -070071
Mathieu Desnoyers125e5642008-02-02 15:10:36 -050072config HAVE_KPROBES
Jan Beulich9ba16082008-10-15 22:01:38 -070073 bool
Ananth N Mavinakayanahalli9edddaa2008-03-04 14:28:37 -080074
75config HAVE_KRETPROBES
Jan Beulich9ba16082008-10-15 22:01:38 -070076 bool
Arthur Kepner74bc7ce2008-04-29 01:00:30 -070077
Roland McGrath1f5a4ad2008-07-25 19:45:57 -070078#
79# An arch should select this if it provides all these things:
80#
81# task_pt_regs() in asm/processor.h or asm/ptrace.h
82# arch_has_single_step() if there is hardware single-step support
83# arch_has_block_step() if there is hardware block-step support
Roland McGrath1f5a4ad2008-07-25 19:45:57 -070084# asm/syscall.h supplying asm-generic/syscall.h interface
85# linux/regset.h user_regset interfaces
86# CORE_DUMP_USE_REGSET #define'd in linux/elf.h
87# TIF_SYSCALL_TRACE calls tracehook_report_syscall_{entry,exit}
88# TIF_NOTIFY_RESUME calls tracehook_notify_resume()
89# signal delivery calls tracehook_signal_handler()
90#
91config HAVE_ARCH_TRACEHOOK
Jan Beulich9ba16082008-10-15 22:01:38 -070092 bool
Roland McGrath1f5a4ad2008-07-25 19:45:57 -070093
Arthur Kepner74bc7ce2008-04-29 01:00:30 -070094config HAVE_DMA_ATTRS
Jan Beulich9ba16082008-10-15 22:01:38 -070095 bool
Jens Axboe3d442232008-06-26 11:21:34 +020096
97config USE_GENERIC_SMP_HELPERS
Jan Beulich9ba16082008-10-15 22:01:38 -070098 bool
David Brownell9483a572008-07-23 21:26:48 -070099
100config HAVE_CLK
Jan Beulich9ba16082008-10-15 22:01:38 -0700101 bool
David Brownell9483a572008-07-23 21:26:48 -0700102 help
103 The <linux/clk.h> calls support software clock gating and
104 thus are a key power management tool on many systems.
105