This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
realtime:documentation:howto:debugging:cyclictest-smi-ftrace [2018/07/24 13:30] ebugden Tone down the seriousness of the Ftrace message |
realtime:documentation:howto:debugging:cyclictest-smi-ftrace [2018/08/21 09:16] ebugden Update link |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Cyclictest - SMI detection with function tracing ====== | ====== Cyclictest - SMI detection with function tracing ====== | ||
- | One way to identify where SMIs happen is to look for inexplicably long gaps in a kernel function trace, as these usually indicate that an abnormally long amount of time was spent handling an SMI. [[realtime:documentation:howto:tools:cyclictest|Cyclictest]] can be used to produce a trace which can then be analyzed to find latencies that could be caused by SMIs. This trace analyzing technique is interesting because it can be used to identify firmware or hardware related latencies on any architecture that supports tracing, not just SMIs on x86 processors. | + | One way to identify where [[realtime:documentation:howto:debugging:smi-latency:start|SMI]]s happen is to look for inexplicably long gaps in a kernel function trace, as these usually indicate that an abnormally long amount of time was spent handling an SMI. [[realtime:documentation:howto:tools:cyclictest:start|Cyclictest]] can be used to produce a trace which can then be analyzed to find latencies that could be caused by SMIs. This trace analyzing technique is interesting because it can be used to identify firmware or hardware related latencies on any architecture that supports tracing, not just SMIs on x86 processors. |
This page explains how to correctly produce a function trace using Cyclictest and how to identify SMI related latencies in the trace. Additional details that clarify some of the topics mentioned more briefly on this page can be found in the general documentation about debugging using Cyclictest [[realtime:documentation:howto:debugging:cyclictest:debugging|here]]. | This page explains how to correctly produce a function trace using Cyclictest and how to identify SMI related latencies in the trace. Additional details that clarify some of the topics mentioned more briefly on this page can be found in the general documentation about debugging using Cyclictest [[realtime:documentation:howto:debugging:cyclictest:debugging|here]]. |