ftrace

Source: Wikipedia, the free encyclopedia.

ftrace
GNU GPL version 2[1]
Websitewww.kernel.org/doc/html/latest/trace/index.html

ftrace (Function Tracer) is a

function calls performed while the kernel is running, ftrace's tracing capabilities cover a much broader range of kernel's internal operations.[2][3]

Details

With its various tracer plugins, ftrace can be targeted at different static tracepoints, such as

preemption are disabled.[2][4][5]
: 3–11, 14, 18 

An ftrace-enabled Linux kernel is built by enabling the CONFIG_FUNCTION_TRACER

userspace utilities to operate.[2][3][6] However, there are additional userspace utilities that provide more advanced features for data recording, analysis and visualization; examples of such utilities are trace-cmd and KernelShark.[2][5]: 31–47 [7][8]

Internally, ftrace relies on the

jumps to the tracing trampolines, depending on the tracing types and options configured at runtime.[9][10]

ftrace is developed primarily by Steven Rostedt, and it was merged into the

Linux kernel mainline in kernel version 2.6.27, which was released on October 9, 2008.[11]

See also

  • DTrace – a tracing framework for troubleshooting kernel and application problems, originally developed for Solaris
  • ktrace – a BSD Unix and Mac OS X utility that traces kernel–program interactions
  • ltrace – a Linux debugging utility, displays the calls a userland application makes to shared libraries
  • strace – a debugging utility for Linux and some other Unix-like systems, monitors system calls used by a program and all received signals
  • SystemTap – a scripting language and utility used for instrumenting Linux systems

References

  1. ^ "Linux kernel source: kernel/COPYING file". kernel.org. March 13, 1994. Retrieved June 11, 2016.
  2. ^ a b c d Jake Edge (March 13, 2009). "A look at ftrace". LWN.net. Retrieved July 23, 2014.
  3. ^ a b Steven Rostedt (June 16, 2014). "Linux kernel documentation: Documentation/trace/ftrace.txt". kernel.org. Retrieved July 23, 2014.
  4. ^ "Red Hat Enterprise MRG 2 documentation, Section 3.8. Using the ftrace utility for tracing latencies". Red Hat. May 23, 2014. Retrieved July 24, 2014.
  5. ^ a b Steven Rostedt (October 18, 2010). "Ftrace: Linux Kernel Tracing" (PDF). linuxfoundation.org. Archived from the original (PDF) on March 8, 2013. Retrieved July 23, 2014.
  6. ^ "Red Hat Enterprise Linux 6 documentation, Section 6.5. ftrace". Red Hat. March 14, 2014. Retrieved July 23, 2014.
  7. ^ Steven Rostedt (October 20, 2010). "trace-cmd: A front-end for Ftrace". LWN.net. Retrieved January 19, 2015.
  8. ^ Steven Rostedt (February 2, 2011). "Using KernelShark to analyze the real-time scheduler". LWN.net. Retrieved June 11, 2016.
  9. ^ Steven Rostedt (January 5, 2015). "Ftrace Kernel Hooks: More than just tracing" (PDF). linuxplumbersconf.org. pp. 6–12, 24, 34, 56–58. Retrieved June 11, 2016.
  10. ^ Tim Bird (November 1, 2012). "Measuring Function Duration with Ftrace" (PDF). elinux.org. pp. 5–6, 12–14. Retrieved June 11, 2016.
  11. ^ "Linux kernel 2.6.27, Section 1.7. ftrace, sysprof support". kernelnewbies.org. October 9, 2008. Retrieved July 23, 2014.

External links

This page is based on the copyrighted Wikipedia article: Ftrace. Articles is available under the CC BY-SA 3.0 license; additional terms may apply.Privacy Policy