Lines Matching defs:msrs
149 struct op_msrs const * const msrs)
259 struct op_msrs const * const msrs)
269 rdmsrl(msrs->controls[i].addr, val);
272 wrmsrl(msrs->controls[i].addr, val);
280 static void op_amd_shutdown(struct op_msrs const * const msrs)
285 if (!msrs->counters[i].addr)
292 static int op_amd_fill_in_addresses(struct op_msrs * const msrs)
304 msrs->counters[i].addr = MSR_K7_PERFCTR0 + i;
305 msrs->controls[i].addr = MSR_K7_EVNTSEL0 + i;
311 op_amd_shutdown(msrs);
319 struct op_msrs const * const msrs)
327 && msrs->counters[op_x86_virt_to_phys(i)].addr)
335 if (!msrs->controls[i].addr)
337 rdmsrl(msrs->controls[i].addr, val);
341 wrmsrl(msrs->controls[i].addr, val);
346 wrmsrl(msrs->counters[i].addr, -1LL);
356 wrmsrl(msrs->counters[i].addr, -(u64)reset_value[virt]);
359 rdmsrl(msrs->controls[i].addr, val);
362 wrmsrl(msrs->controls[i].addr, val);
376 struct op_msrs const * const msrs)
385 rdmsrl(msrs->counters[i].addr, val);
390 wrmsrl(msrs->counters[i].addr, -(u64)reset_value[virt]);
393 op_amd_handle_ibs(regs, msrs);
399 static void op_amd_start(struct op_msrs const * const msrs)
407 rdmsrl(msrs->controls[i].addr, val);
409 wrmsrl(msrs->controls[i].addr, val);
415 static void op_amd_stop(struct op_msrs const * const msrs)
427 rdmsrl(msrs->controls[i].addr, val);
429 wrmsrl(msrs->controls[i].addr, val);