From 18328a0b708cdaecb46a855f67fd7f532978ab5e Mon Sep 17 00:00:00 2001 From: Andi Kleen Date: Sat, 22 Mar 2008 10:59:28 +0100 Subject: [PATCH] --- yaml --- r: 89070 b: refs/heads/master c: 1de87bd40e119d26533b5135677901990390bfa9 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/include/asm-x86/msr.h | 8 ++++++++ trunk/include/asm-x86/paravirt.h | 7 +++++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 0a9f1ea28b91..ad40f5e6cfd3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f5c24a7fd0798d636af184cc7032e7e0cb149112 +refs/heads/master: 1de87bd40e119d26533b5135677901990390bfa9 diff --git a/trunk/include/asm-x86/msr.h b/trunk/include/asm-x86/msr.h index 2c698a2e81f9..3707650a169b 100644 --- a/trunk/include/asm-x86/msr.h +++ b/trunk/include/asm-x86/msr.h @@ -150,6 +150,14 @@ static inline int wrmsr_safe(unsigned msr, unsigned low, unsigned high) __err; \ }) +static inline int rdmsrl_safe(unsigned msr, unsigned long long *p) +{ + int err; + + *p = native_read_msr_safe(msr, &err); + return err; +} + #define rdtscl(low) \ ((low) = (u32)native_read_tsc()) diff --git a/trunk/include/asm-x86/paravirt.h b/trunk/include/asm-x86/paravirt.h index 0c23f7940bc4..3d419398499b 100644 --- a/trunk/include/asm-x86/paravirt.h +++ b/trunk/include/asm-x86/paravirt.h @@ -693,6 +693,13 @@ do { \ _err; \ }) +static inline int rdmsrl_safe(unsigned msr, unsigned long long *p) +{ + int err; + + *p = paravirt_read_msr(msr, &err); + return err; +} static inline u64 paravirt_read_tsc(void) {