41 lines
783 B
ReStructuredText
41 lines
783 B
ReStructuredText
|
================
|
||
|
MSR Trace Events
|
||
|
================
|
||
|
|
||
|
The x86 kernel supports tracing most MSR (Model Specific Register) accesses.
|
||
|
To see the definition of the MSRs on Intel systems please see the SDM
|
||
|
at https://www.intel.com/sdm (Volume 3)
|
||
|
|
||
|
Available trace points:
|
||
|
|
||
|
/sys/kernel/debug/tracing/events/msr/
|
||
|
|
||
|
Trace MSR reads:
|
||
|
|
||
|
read_msr
|
||
|
|
||
|
- msr: MSR number
|
||
|
- val: Value written
|
||
|
- failed: 1 if the access failed, otherwise 0
|
||
|
|
||
|
|
||
|
Trace MSR writes:
|
||
|
|
||
|
write_msr
|
||
|
|
||
|
- msr: MSR number
|
||
|
- val: Value written
|
||
|
- failed: 1 if the access failed, otherwise 0
|
||
|
|
||
|
|
||
|
Trace RDPMC in kernel:
|
||
|
|
||
|
rdpmc
|
||
|
|
||
|
The trace data can be post processed with the postprocess/decode_msr.py script::
|
||
|
|
||
|
cat /sys/kernel/debug/tracing/trace | decode_msr.py /usr/src/linux/include/asm/msr-index.h
|
||
|
|
||
|
to add symbolic MSR names.
|
||
|
|