x86, msr: Export the register-setting MSR functions via /dev/*/msr

Previous thread: x86, msr: fix msr-reg.S compilation with gas 2.16.1 by Linux Kernel Mailing List on Monday, September 14, 2009 - 9:00 am. (1 message)

Next thread: x86, msr: Fix msr-reg.S compilation with gas 2.16.1, on 32-bit too by Linux Kernel Mailing List on Monday, September 14, 2009 - 9:00 am. (1 message)
From: Linux Kernel Mailing List
Date: Monday, September 14, 2009 - 9:00 am

Gitweb:     http://git.kernel.org/linus/ff55df53dfdd338906c8ba9d1f4a759b86b869d5
Commit:     ff55df53dfdd338906c8ba9d1f4a759b86b869d5
Parent:     8b956bf1f0f2b552ed93cf6cafe823edff298b3b
Author:     H. Peter Anvin <hpa@zytor.com>
AuthorDate: Mon Aug 31 14:16:57 2009 -0700
Committer:  H. Peter Anvin <hpa@zytor.com>
CommitDate: Mon Aug 31 16:16:04 2009 -0700

    x86, msr: Export the register-setting MSR functions via /dev/*/msr
    
    Make it possible to access the all-register-setting/getting MSR
    functions via the MSR driver.  This is implemented as an ioctl() on
    the standard MSR device node.
    
    Signed-off-by: H. Peter Anvin <hpa@zytor.com>
    Cc: Borislav Petkov <petkovbb@gmail.com>
---
 Documentation/ioctl/ioctl-number.txt |    1 +
 arch/x86/include/asm/msr.h           |   10 +++++-
 arch/x86/kernel/msr.c                |   51 ++++++++++++++++++++++++++++++++++
 3 files changed, 60 insertions(+), 2 deletions(-)

diff --git a/Documentation/ioctl/ioctl-number.txt b/Documentation/ioctl/ioctl-number.txt
index dbea4f9..1c058b5 100644
--- a/Documentation/ioctl/ioctl-number.txt
+++ b/Documentation/ioctl/ioctl-number.txt
@@ -121,6 +121,7 @@ Code	Seq#	Include File		Comments
 'c'	00-7F	linux/comstats.h	conflict!
 'c'	00-7F	linux/coda.h		conflict!
 'c'	80-9F	arch/s390/include/asm/chsc.h
+'c'	A0-AF   arch/x86/include/asm/msr.h
 'd'	00-FF	linux/char/drm/drm/h	conflict!
 'd'	F0-FF	linux/digi1.h
 'e'	all	linux/digi1.h		conflict!
diff --git a/arch/x86/include/asm/msr.h b/arch/x86/include/asm/msr.h
index 8e56712..7e2b6ba 100644
--- a/arch/x86/include/asm/msr.h
+++ b/arch/x86/include/asm/msr.h
@@ -3,10 +3,16 @@
 
 #include <asm/msr-index.h>
 
-#ifdef __KERNEL__
 #ifndef __ASSEMBLY__
 
 #include <linux/types.h>
+#include <linux/ioctl.h>
+
+#define X86_IOC_RDMSR_REGS	_IOWR('c', 0xA0, __u32[8])
+#define X86_IOC_WRMSR_REGS	_IOWR('c', 0xA1, __u32[8])
+
+#ifdef __KERNEL__
+
 #include <asm/asm.h>
 #include <asm/errno.h>
 #include <asm/cpumask.h>
@@ -286,6 ...
Previous thread: x86, msr: fix msr-reg.S compilation with gas 2.16.1 by Linux Kernel Mailing List on Monday, September 14, 2009 - 9:00 am. (1 message)

Next thread: x86, msr: Fix msr-reg.S compilation with gas 2.16.1, on 32-bit too by Linux Kernel Mailing List on Monday, September 14, 2009 - 9:00 am. (1 message)