diff options
author | Keir Fraser <keir.fraser@citrix.com> | 2010-06-24 21:56:03 +0100 |
---|---|---|
committer | Keir Fraser <keir.fraser@citrix.com> | 2010-06-24 21:56:03 +0100 |
commit | be9a6b532389149d4b0480f2a647e971b5ec5bda (patch) | |
tree | 64ca46b86f3574b66a4f9794bd7d9b3153be5b6a /xen/arch/x86/oprofile | |
parent | beb367d559f07dd19648c1aa4a54ee79e404059e (diff) | |
download | xen-be9a6b532389149d4b0480f2a647e971b5ec5bda.tar.gz xen-be9a6b532389149d4b0480f2a647e971b5ec5bda.tar.bz2 xen-be9a6b532389149d4b0480f2a647e971b5ec5bda.zip |
x86: use rdmsrl/wrmsrl
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Diffstat (limited to 'xen/arch/x86/oprofile')
-rw-r--r-- | xen/arch/x86/oprofile/nmi_int.c | 16 | ||||
-rw-r--r-- | xen/arch/x86/oprofile/op_x86_model.h | 7 |
2 files changed, 5 insertions, 18 deletions
diff --git a/xen/arch/x86/oprofile/nmi_int.c b/xen/arch/x86/oprofile/nmi_int.c index 16f6916b2e..e8d8cee6f9 100644 --- a/xen/arch/x86/oprofile/nmi_int.c +++ b/xen/arch/x86/oprofile/nmi_int.c @@ -104,15 +104,11 @@ static void nmi_cpu_save_registers(struct op_msrs *msrs) unsigned int i; for (i = 0; i < nr_ctrs; ++i) { - rdmsr(counters[i].addr, - counters[i].saved.low, - counters[i].saved.high); + rdmsrl(counters[i].addr, counters[i].value); } for (i = 0; i < nr_ctrls; ++i) { - rdmsr(controls[i].addr, - controls[i].saved.low, - controls[i].saved.high); + rdmsrl(controls[i].addr, controls[i].value); } } @@ -222,15 +218,11 @@ static void nmi_restore_registers(struct op_msrs * msrs) unsigned int i; for (i = 0; i < nr_ctrls; ++i) { - wrmsr(controls[i].addr, - controls[i].saved.low, - controls[i].saved.high); + wrmsrl(controls[i].addr, controls[i].value); } for (i = 0; i < nr_ctrs; ++i) { - wrmsr(counters[i].addr, - counters[i].saved.low, - counters[i].saved.high); + wrmsrl(counters[i].addr, counters[i].value); } } diff --git a/xen/arch/x86/oprofile/op_x86_model.h b/xen/arch/x86/oprofile/op_x86_model.h index 7ac709cb6b..9303abaa9b 100644 --- a/xen/arch/x86/oprofile/op_x86_model.h +++ b/xen/arch/x86/oprofile/op_x86_model.h @@ -11,14 +11,9 @@ #ifndef OP_X86_MODEL_H #define OP_X86_MODEL_H -struct op_saved_msr { - unsigned int high; - unsigned int low; -}; - struct op_msr { unsigned long addr; - struct op_saved_msr saved; + uint64_t value; }; struct op_msrs { |