<div dir="ltr"><div>I am presently working with Model Specific Registers and have been studying the kernel module implementation found in arch/x86/kernel/msr.c. I am attempting
 to understand what the implementation of the <a href="http://lxr.free-electrons.com/source/arch/x86/kernel/msr.c?v=3.8#L124" rel="nofollow">msr_ioctl(X86_IOC_RDMSR_REGS)</a> call is doing.<br>

<br>
msr_ioctl(X86_IOC_RDMSR_REGS) calls <a href="http://lxr.free-electrons.com/source/arch/x86/lib/msr-smp.c#L242" rel="nofollow">rdmsr_safe_regs_on_cpu()</a> (arch/x86/lib/msr-smp.c, line 180) which sets up <a href="http://lxr.free-electrons.com/source/arch/x86/lib/msr-smp.c#L228" rel="nofollow">__rdmsr_safe_regs_on_cpu</a>() (arch/x86/lib/msr-smp.c, line 166) as a callback function to perform the actual work.  This callback function then calls rdmsr_safe_regs().
<br>

<br>
I am unable to find the implementation for rdmsr_safe_regs().  <a href="http://lxr.free-electrons.com/ident?i=rdmsr_safe_regs" rel="nofollow">lxr</a> only mentions references and a prototype definition.
<br>

<br>
I&#39;ve also manually grepped through the entire kernel source tree and 
have not been able to find where rdmsr_safe_regs is defined.
<br>

<br>
I have poked around online, but have so far not been able to generate the correct query to find an answer.
<br></div><div><div>

<br>
Can someone point me to the right documentation where I can figure this out?
<br>

<br>
Thanks,<br><br></div><div>Marty<br></div></div></div>