Kconfig (d0034a7a4ac7fae708146ac0059b9c47a1543f0d) Kconfig (bce29ac9ce0bb0b0b146b687ab978378c21e9078)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Architectures that offer an FUNCTION_TRACER implementation should
4# select HAVE_FUNCTION_TRACER:
5#
6
7config USER_STACKTRACE_SUPPORT
8 bool

--- 342 unchanged lines hidden (view full) ---

351 but when it is running, it can cause the system to be
352 periodically non responsive. Do not run this tracer on a
353 production system.
354
355 To enable this tracer, echo in "hwlat" into the current_tracer
356 file. Every time a latency is greater than tracing_thresh, it will
357 be recorded into the ring buffer.
358
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Architectures that offer an FUNCTION_TRACER implementation should
4# select HAVE_FUNCTION_TRACER:
5#
6
7config USER_STACKTRACE_SUPPORT
8 bool

--- 342 unchanged lines hidden (view full) ---

351 but when it is running, it can cause the system to be
352 periodically non responsive. Do not run this tracer on a
353 production system.
354
355 To enable this tracer, echo in "hwlat" into the current_tracer
356 file. Every time a latency is greater than tracing_thresh, it will
357 be recorded into the ring buffer.
358
359config OSNOISE_TRACER
360 bool "OS Noise tracer"
361 select GENERIC_TRACER
362 help
363 In the context of high-performance computing (HPC), the Operating
364 System Noise (osnoise) refers to the interference experienced by an
365 application due to activities inside the operating system. In the
366 context of Linux, NMIs, IRQs, SoftIRQs, and any other system thread
367 can cause noise to the system. Moreover, hardware-related jobs can
368 also cause noise, for example, via SMIs.
369
370 The osnoise tracer leverages the hwlat_detector by running a similar
371 loop with preemption, SoftIRQs and IRQs enabled, thus allowing all
372 the sources of osnoise during its execution. The osnoise tracer takes
373 note of the entry and exit point of any source of interferences,
374 increasing a per-cpu interference counter. It saves an interference
375 counter for each source of interference. The interference counter for
376 NMI, IRQs, SoftIRQs, and threads is increased anytime the tool
377 observes these interferences' entry events. When a noise happens
378 without any interference from the operating system level, the
379 hardware noise counter increases, pointing to a hardware-related
380 noise. In this way, osnoise can account for any source of
381 interference. At the end of the period, the osnoise tracer prints
382 the sum of all noise, the max single noise, the percentage of CPU
383 available for the thread, and the counters for the noise sources.
384
385 In addition to the tracer, a set of tracepoints were added to
386 facilitate the identification of the osnoise source.
387
388 The output will appear in the trace and trace_pipe files.
389
390 To enable this tracer, echo in "osnoise" into the current_tracer
391 file.
392
359config MMIOTRACE
360 bool "Memory mapped IO tracing"
361 depends on HAVE_MMIOTRACE_SUPPORT && PCI
362 select GENERIC_TRACER
363 help
364 Mmiotrace traces Memory Mapped I/O access and is meant for
365 debugging and reverse engineering. It is called from the ioremap
366 implementation and works via page faults. Tracing is disabled by

--- 609 unchanged lines hidden ---
393config MMIOTRACE
394 bool "Memory mapped IO tracing"
395 depends on HAVE_MMIOTRACE_SUPPORT && PCI
396 select GENERIC_TRACER
397 help
398 Mmiotrace traces Memory Mapped I/O access and is meant for
399 debugging and reverse engineering. It is called from the ioremap
400 implementation and works via page faults. Tracing is disabled by

--- 609 unchanged lines hidden ---