Lines Matching refs:msr
5 #include <asm/msr.h>
7 #include <asm/msr-trace.h>
9 struct msr __percpu *msrs_alloc(void)
11 struct msr __percpu *msrs = NULL;
13 msrs = alloc_percpu(struct msr);
23 void msrs_free(struct msr __percpu *msrs)
31 * @msr: MSR to read
39 static int msr_read(u32 msr, struct msr *m)
44 err = rdmsrl_safe(msr, &val);
54 * @msr: MSR to write
59 static int msr_write(u32 msr, struct msr *m)
61 return wrmsrl_safe(msr, m->q);
64 static inline int __flip_bit(u32 msr, u8 bit, bool set)
66 struct msr m, m1;
72 err = msr_read(msr, &m);
85 err = msr_write(msr, &m1);
93 * msr_set_bit - Set @bit in a MSR @msr.
94 * @msr: MSR to write
102 int msr_set_bit(u32 msr, u8 bit)
104 return __flip_bit(msr, bit, true);
108 * msr_clear_bit - Clear @bit in a MSR @msr.
109 * @msr: MSR to write
117 int msr_clear_bit(u32 msr, u8 bit)
119 return __flip_bit(msr, bit, false);
123 void do_trace_write_msr(unsigned int msr, u64 val, int failed)
125 trace_write_msr(msr, val, failed);
130 void do_trace_read_msr(unsigned int msr, u64 val, int failed)
132 trace_read_msr(msr, val, failed);