diff options
Diffstat (limited to 'arch/x86/include/asm/msr.h')
| -rw-r--r-- | arch/x86/include/asm/msr.h | 24 | 
1 files changed, 24 insertions, 0 deletions
diff --git a/arch/x86/include/asm/msr.h b/arch/x86/include/asm/msr.h index cb7502852ac..de36f22eb0b 100644 --- a/arch/x86/include/asm/msr.h +++ b/arch/x86/include/asm/msr.h @@ -214,14 +214,20 @@ do {                                                            \  struct msr *msrs_alloc(void);  void msrs_free(struct msr *msrs); +int msr_set_bit(u32 msr, u8 bit); +int msr_clear_bit(u32 msr, u8 bit);  #ifdef CONFIG_SMP  int rdmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 *l, u32 *h);  int wrmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 l, u32 h); +int rdmsrl_on_cpu(unsigned int cpu, u32 msr_no, u64 *q); +int wrmsrl_on_cpu(unsigned int cpu, u32 msr_no, u64 q);  void rdmsr_on_cpus(const struct cpumask *mask, u32 msr_no, struct msr *msrs);  void wrmsr_on_cpus(const struct cpumask *mask, u32 msr_no, struct msr *msrs);  int rdmsr_safe_on_cpu(unsigned int cpu, u32 msr_no, u32 *l, u32 *h);  int wrmsr_safe_on_cpu(unsigned int cpu, u32 msr_no, u32 l, u32 h); +int rdmsrl_safe_on_cpu(unsigned int cpu, u32 msr_no, u64 *q); +int wrmsrl_safe_on_cpu(unsigned int cpu, u32 msr_no, u64 q);  int rdmsr_safe_regs_on_cpu(unsigned int cpu, u32 regs[8]);  int wrmsr_safe_regs_on_cpu(unsigned int cpu, u32 regs[8]);  #else  /*  CONFIG_SMP  */ @@ -235,6 +241,16 @@ static inline int wrmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 l, u32 h)  	wrmsr(msr_no, l, h);  	return 0;  } +static inline int rdmsrl_on_cpu(unsigned int cpu, u32 msr_no, u64 *q) +{ +	rdmsrl(msr_no, *q); +	return 0; +} +static inline int wrmsrl_on_cpu(unsigned int cpu, u32 msr_no, u64 q) +{ +	wrmsrl(msr_no, q); +	return 0; +}  static inline void rdmsr_on_cpus(const struct cpumask *m, u32 msr_no,  				struct msr *msrs)  { @@ -254,6 +270,14 @@ static inline int wrmsr_safe_on_cpu(unsigned int cpu, u32 msr_no, u32 l, u32 h)  {  	return wrmsr_safe(msr_no, l, h);  } +static inline int rdmsrl_safe_on_cpu(unsigned int cpu, u32 msr_no, u64 *q) +{ +	return rdmsrl_safe(msr_no, q); +} +static inline int wrmsrl_safe_on_cpu(unsigned int cpu, u32 msr_no, u64 q) +{ +	return wrmsrl_safe(msr_no, q); +}  static inline int rdmsr_safe_regs_on_cpu(unsigned int cpu, u32 regs[8])  {  	return rdmsr_safe_regs(regs);  | 
