arch/Kconfig v3.0-rc7

OPROFILE

OProfile system profiling

OProfile is a profiling system capable of profiling the
whole system, include the kernel, kernel modules, libraries,
and applications.

If unsure, say N.

OPROFILE_EVENT_MULTIPLEX

OProfile multiplexing support (EXPERIMENTAL)

The number of hardware counters is limited. The multiplexing
feature enables OProfile to gather more events than counters
are provided by the hardware. This is realized by switching
between events at an user specified time interval.

If unsure, say N.

KPROBES

Kprobes

Kprobes allows you to trap at almost any kernel address and
execute a callback function.  register_kprobe() establishes
a probepoint and specifies the callback.  Kprobes is useful
for kernel debugging, non-intrusive instrumentation and testing.
If in doubt, say "N".

JUMP_LABEL

Optimize trace point call sites

If it is detected that the compiler has support for "asm goto",
the kernel will compile trace point locations with just a
nop instruction. When trace points are enabled, the nop will
be converted to a jump to the trace function. This technique
lowers overhead and stress on the branch prediction of the
processor.

On i386, options added to the compiler flags may increase
the size of the kernel slightly.

HAVE_EFFICIENT_UNALIGNED_ACCESS

Some architectures are unable to perform unaligned accesses
without the use of get_unaligned/put_unaligned. Others are
unable to perform such accesses efficiently (e.g. trap on
unaligned access and require fixing it up in the exception
handler.)

This symbol should be selected by an architecture if it can
perform unaligned accesses efficiently to allow different
code paths to be selected for these cases. Some network
drivers, for example, could opt to not fix up alignment
problems with received packets if doing so would not help
much.

See Documentation/unaligned-memory-access.txt for more
information on the topic of unaligned memory accesses.

USER_RETURN_NOTIFIER

Provide a kernel-internal notification when a cpu is about to
switch to user mode.

HAVE_REGS_AND_STACK_ACCESS_API

This symbol should be selected by an architecure if it supports
the API needed to access registers and stack entries from pt_regs,
declared in asm/ptrace.h
For example the kprobes-based event tracer needs this API.

HAVE_CLK

The <linux/clk.h> calls support software clock gating and
thus are a key power management tool on many systems.

HAVE_MIXED_BREAKPOINTS_REGS

Depending on the arch implementation of hardware breakpoints,
some of them have separate registers for data and instruction
breakpoints addresses, others have mixed registers to store
them but define the access type in a control register.
Select this option if your arch implements breakpoints under the
latter fashion.

HAVE_PERF_EVENTS_NMI

System hardware can generate an NMI using the perf event
subsystem.  Also has support for calculating CPU cycle events
to determine how many clock cycles in a given period.

kernel/gcov/Kconfig