[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v3 7/9] x86/hvm: Rename hvm/event to hvm/monitor
Mechanical renaming to better describe that the code in hvm/event is part of the monitor subsystem. Signed-off-by: Tamas K Lengyel <tamas@xxxxxxxxxxxxx> Acked-by: Kevin Tian <kevin.tian@xxxxxxxxx> --- Cc: Jan Beulich <jbeulich@xxxxxxxx> Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> Cc: Razvan Cojocaru <rcojocaru@xxxxxxxxxxxxxxx> Cc: Jun Nakajima <jun.nakajima@xxxxxxxxx> --- xen/arch/x86/hvm/Makefile | 2 +- xen/arch/x86/hvm/hvm.c | 12 +++++------ xen/arch/x86/hvm/{event.c => monitor.c} | 17 ++++++++------- xen/arch/x86/hvm/vmx/vmx.c | 13 +++++------ xen/include/asm-x86/hvm/{event.h => monitor.h} | 30 +++++++++++++------------- 5 files changed, 38 insertions(+), 36 deletions(-) rename xen/arch/x86/hvm/{event.c => monitor.c} (88%) rename xen/include/asm-x86/hvm/{event.h => monitor.h} (60%) diff --git a/xen/arch/x86/hvm/Makefile b/xen/arch/x86/hvm/Makefile index 8bc55a9..f750d13 100644 --- a/xen/arch/x86/hvm/Makefile +++ b/xen/arch/x86/hvm/Makefile @@ -3,7 +3,6 @@ subdir-y += vmx obj-y += asid.o obj-y += emulate.o -obj-y += event.o obj-y += hpet.o obj-y += hvm.o obj-y += i8254.o @@ -11,6 +10,7 @@ obj-y += intercept.o obj-y += io.o obj-y += ioreq.o obj-y += irq.o +obj-y += monitor.o obj-y += mtrr.o obj-y += nestedhvm.o obj-y += pmtimer.o diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c index 5d740f7..2689378 100644 --- a/xen/arch/x86/hvm/hvm.c +++ b/xen/arch/x86/hvm/hvm.c @@ -60,7 +60,7 @@ #include <asm/hvm/cacheattr.h> #include <asm/hvm/trace.h> #include <asm/hvm/nestedhvm.h> -#include <asm/hvm/event.h> +#include <asm/hvm/monitor.h> #include <asm/hvm/ioreq.h> #include <asm/hvm/vmx/vmx.h> #include <asm/altp2m.h> @@ -1961,7 +1961,7 @@ int hvm_handle_xsetbv(u32 index, u64 new_bv) { int rc; - hvm_event_crX(XCR0, new_bv, current->arch.xcr0); + hvm_monitor_crX(XCR0, new_bv, current->arch.xcr0); rc = handle_xsetbv(index, new_bv); if ( rc ) @@ -2197,7 +2197,7 @@ int hvm_set_cr0(unsigned long value, bool_t may_defer) { ASSERT(v->arch.vm_event); - if ( hvm_event_crX(CR0, value, old_value) ) + if ( hvm_monitor_crX(CR0, value, old_value) ) { /* The actual write will occur in hvm_do_resume(), if permitted. */ v->arch.vm_event->write_data.do_write.cr0 = 1; @@ -2299,7 +2299,7 @@ int hvm_set_cr3(unsigned long value, bool_t may_defer) { ASSERT(v->arch.vm_event); - if ( hvm_event_crX(CR3, value, old) ) + if ( hvm_monitor_crX(CR3, value, old) ) { /* The actual write will occur in hvm_do_resume(), if permitted. */ v->arch.vm_event->write_data.do_write.cr3 = 1; @@ -2379,7 +2379,7 @@ int hvm_set_cr4(unsigned long value, bool_t may_defer) { ASSERT(v->arch.vm_event); - if ( hvm_event_crX(CR4, value, old_cr) ) + if ( hvm_monitor_crX(CR4, value, old_cr) ) { /* The actual write will occur in hvm_do_resume(), if permitted. */ v->arch.vm_event->write_data.do_write.cr4 = 1; @@ -3712,7 +3712,7 @@ int hvm_msr_write_intercept(unsigned int msr, uint64_t msr_content, v->arch.vm_event->write_data.msr = msr; v->arch.vm_event->write_data.value = msr_content; - hvm_event_msr(msr, msr_content); + hvm_monitor_msr(msr, msr_content); return X86EMUL_OKAY; } diff --git a/xen/arch/x86/hvm/event.c b/xen/arch/x86/hvm/monitor.c similarity index 88% rename from xen/arch/x86/hvm/event.c rename to xen/arch/x86/hvm/monitor.c index 73d0a26..19048f4 100644 --- a/xen/arch/x86/hvm/event.c +++ b/xen/arch/x86/hvm/monitor.c @@ -1,5 +1,5 @@ /* - * arch/x86/hvm/event.c + * arch/x86/hvm/monitor.c * * Arch-specific hardware virtual machine event abstractions. * @@ -7,6 +7,7 @@ * Copyright (c) 2005, International Business Machines Corporation. * Copyright (c) 2008, Citrix Systems, Inc. * Copyright (c) 2016, Bitdefender S.R.L. + * Copyright (c) 2016, Tamas K Lengyel (tamas@xxxxxxxxxxxxx) * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, @@ -22,12 +23,12 @@ */ #include <xen/vm_event.h> -#include <asm/hvm/event.h> +#include <asm/hvm/monitor.h> #include <asm/monitor.h> #include <asm/vm_event.h> #include <public/vm_event.h> -bool_t hvm_event_cr(unsigned int index, unsigned long value, unsigned long old) +bool_t hvm_monitor_cr(unsigned int index, unsigned long value, unsigned long old) { struct vcpu *curr = current; struct arch_domain *ad = &curr->domain->arch; @@ -55,7 +56,7 @@ bool_t hvm_event_cr(unsigned int index, unsigned long value, unsigned long old) return 0; } -void hvm_event_msr(unsigned int msr, uint64_t value) +void hvm_monitor_msr(unsigned int msr, uint64_t value) { struct vcpu *curr = current; struct arch_domain *ad = &curr->domain->arch; @@ -89,8 +90,8 @@ static inline unsigned long gfn_of_rip(unsigned long rip) return paging_gva_to_gfn(curr, sreg.base + rip, &pfec); } -int hvm_event_breakpoint(unsigned long rip, - enum hvm_event_breakpoint_type type) +int hvm_monitor_breakpoint(unsigned long rip, + enum hvm_monitor_breakpoint_type type) { struct vcpu *curr = current; struct arch_domain *ad = &curr->domain->arch; @@ -98,14 +99,14 @@ int hvm_event_breakpoint(unsigned long rip, switch ( type ) { - case HVM_EVENT_SOFTWARE_BREAKPOINT: + case HVM_MONITOR_SOFTWARE_BREAKPOINT: if ( !ad->monitor.software_breakpoint_enabled ) return 0; req.reason = VM_EVENT_REASON_SOFTWARE_BREAKPOINT; req.u.software_breakpoint.gfn = gfn_of_rip(rip); break; - case HVM_EVENT_SINGLESTEP_BREAKPOINT: + case HVM_MONITOR_SINGLESTEP_BREAKPOINT: if ( !ad->monitor.singlestep_enabled ) return 0; req.reason = VM_EVENT_REASON_SINGLESTEP; diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c index bc4410f..476a606 100644 --- a/xen/arch/x86/hvm/vmx/vmx.c +++ b/xen/arch/x86/hvm/vmx/vmx.c @@ -50,7 +50,7 @@ #include <asm/hvm/vpt.h> #include <public/hvm/save.h> #include <asm/hvm/trace.h> -#include <asm/hvm/event.h> +#include <asm/hvm/monitor.h> #include <asm/xenoprof.h> #include <asm/debugger.h> #include <asm/apic.h> @@ -2473,10 +2473,10 @@ static int vmx_cr_access(unsigned long exit_qualification) /* * Special case unlikely to be interesting to a - * VM_EVENT_FLAG_DENY-capable application, so the hvm_event_crX() + * VM_EVENT_FLAG_DENY-capable application, so the hvm_monitor_crX() * return value is ignored for now. */ - hvm_event_crX(CR0, value, old); + hvm_monitor_crX(CR0, value, old); curr->arch.hvm_vcpu.guest_cr[0] = value; vmx_update_guest_cr(curr, 0); HVMTRACE_0D(CLTS); @@ -3389,8 +3389,8 @@ void vmx_vmexit_handler(struct cpu_user_regs *regs) } else { int handled = - hvm_event_breakpoint(regs->eip, - HVM_EVENT_SOFTWARE_BREAKPOINT); + hvm_monitor_breakpoint(regs->eip, + HVM_MONITOR_SOFTWARE_BREAKPOINT); if ( handled < 0 ) { @@ -3717,7 +3717,8 @@ void vmx_vmexit_handler(struct cpu_user_regs *regs) vmx_update_cpu_exec_control(v); if ( v->arch.hvm_vcpu.single_step ) { - hvm_event_breakpoint(regs->eip, HVM_EVENT_SINGLESTEP_BREAKPOINT); + hvm_monitor_breakpoint(regs->eip, + HVM_MONITOR_SINGLESTEP_BREAKPOINT); if ( v->domain->debugger_attached ) domain_pause_for_debugger(); } diff --git a/xen/include/asm-x86/hvm/event.h b/xen/include/asm-x86/hvm/monitor.h similarity index 60% rename from xen/include/asm-x86/hvm/event.h rename to xen/include/asm-x86/hvm/monitor.h index 03f7fee..1d3c668 100644 --- a/xen/include/asm-x86/hvm/event.h +++ b/xen/include/asm-x86/hvm/monitor.h @@ -1,7 +1,7 @@ /* - * include/asm-x86/hvm/event.h + * include/asm-x86/hvm/monitor.h * - * Arch-specific hardware virtual machine event abstractions. + * Arch-specific hardware virtual machine monitor abstractions. * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, @@ -16,17 +16,17 @@ * this program; If not, see <http://www.gnu.org/licenses/>. */ -#ifndef __ASM_X86_HVM_EVENT_H__ -#define __ASM_X86_HVM_EVENT_H__ +#ifndef __ASM_X86_HVM_MONITOR_H__ +#define __ASM_X86_HVM_MONITOR_H__ #include <xen/sched.h> #include <xen/paging.h> #include <public/vm_event.h> -enum hvm_event_breakpoint_type +enum hvm_monitor_breakpoint_type { - HVM_EVENT_SOFTWARE_BREAKPOINT, - HVM_EVENT_SINGLESTEP_BREAKPOINT, + HVM_MONITOR_SOFTWARE_BREAKPOINT, + HVM_MONITOR_SINGLESTEP_BREAKPOINT, }; /* @@ -34,15 +34,15 @@ enum hvm_event_breakpoint_type * The event might not fire if the client has subscribed to it in onchangeonly * mode, hence the bool_t return type for control register write events. */ -bool_t hvm_event_cr(unsigned int index, unsigned long value, - unsigned long old); -#define hvm_event_crX(cr, new, old) \ - hvm_event_cr(VM_EVENT_X86_##cr, new, old) -void hvm_event_msr(unsigned int msr, uint64_t value); -int hvm_event_breakpoint(unsigned long rip, - enum hvm_event_breakpoint_type type); +bool_t hvm_monitor_cr(unsigned int index, unsigned long value, + unsigned long old); +#define hvm_monitor_crX(cr, new, old) \ + hvm_monitor_cr(VM_EVENT_X86_##cr, new, old) +void hvm_monitor_msr(unsigned int msr, uint64_t value); +int hvm_monitor_breakpoint(unsigned long rip, + enum hvm_monitor_breakpoint_type type); -#endif /* __ASM_X86_HVM_EVENT_H__ */ +#endif /* __ASM_X86_HVM_MONITOR_H__ */ /* * Local variables: -- 2.8.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |