monitor: rename vm_event_monitor_get_capabilities

The monitor_get_capabilities check actually belongs to the monitor subsystem so
relocating and renaming it to sanitize the code's name and location. Mechanical
patch, no code changes introduced.

Signed-off-by: Tamas K Lengyel <tamas@tklengyel.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Razvan Cojocaru <rcojocaru@bitdefender.com>
Acked-by: Julien Grall <julien.grall@arm.com>
This commit is contained in:
Tamas K Lengyel authored and Jan Beulich committed 2016-06-24 10:26:32 +02:00
1 parent a6288d5bb8
commit c4317ff612
6 files changed
+36 -37

No files matched your search

+1 -1
View File
@@ -226,7 +226,7 @@ int arch_monitor_domctl_event(struct domain *d,
default:
/*
* Should not be reached unless vm_event_monitor_get_capabilities() is
* Should not be reached unless arch_monitor_get_capabilities() is
* not properly implemented.
*/
ASSERT_UNREACHABLE();
+2 -3
View File
@@ -24,7 +24,6 @@
#include <xsm/xsm.h>
#include <public/domctl.h>
#include <asm/monitor.h>
#include <asm/vm_event.h>
int monitor_domctl(struct domain *d, struct xen_domctl_monitor_op *mop)
{
@@ -48,12 +47,12 @@ int monitor_domctl(struct domain *d, struct xen_domctl_monitor_op *mop)
if ( unlikely(mop->event > 31) )
return -EINVAL;
/* Check if event type is available. */
if ( unlikely(!(vm_event_monitor_get_capabilities(d) & (1U << mop->event))) )
if ( unlikely(!(arch_monitor_get_capabilities(d) & (1U << mop->event))) )
return -EOPNOTSUPP;
break;
case XEN_DOMCTL_MONITOR_OP_GET_CAPABILITIES:
mop->event = vm_event_monitor_get_capabilities(d);
mop->event = arch_monitor_get_capabilities(d);
return 0;
default:
+10 -1
View File
@@ -39,7 +39,7 @@ int arch_monitor_domctl_event(struct domain *d,
/*
* No arch-specific monitor vm-events on ARM.
*
* Should not be reached unless vm_event_monitor_get_capabilities() is not
* Should not be reached unless arch_monitor_get_capabilities() is not
* properly implemented.
*/
ASSERT_UNREACHABLE();
@@ -59,4 +59,13 @@ void arch_monitor_cleanup_domain(struct domain *d)
/* No arch-specific domain cleanup on ARM. */
}
static inline uint32_t arch_monitor_get_capabilities(struct domain *d)
{
uint32_t capabilities = 0;
capabilities = (1U << XEN_DOMCTL_MONITOR_EVENT_GUEST_REQUEST);
return capabilities;
}
#endif /* __ASM_ARM_MONITOR_H__ */
-9
View File
@@ -59,13 +59,4 @@ static inline void vm_event_fill_regs(vm_event_request_t *req)
/* Not supported on ARM. */
}
static inline uint32_t vm_event_monitor_get_capabilities(struct domain *d)
{
uint32_t capabilities = 0;
capabilities = (1U << XEN_DOMCTL_MONITOR_EVENT_GUEST_REQUEST);
return capabilities;
}
#endif /* __ASM_ARM_VM_EVENT_H__ */
+23
View File
@@ -63,6 +63,29 @@ int arch_monitor_domctl_op(struct domain *d, struct xen_domctl_monitor_op *mop)
return rc;
}
static inline uint32_t arch_monitor_get_capabilities(struct domain *d)
{
uint32_t capabilities = 0;
/*
* At the moment only Intel HVM domains are supported. However, event
* delivery could be extended to AMD and PV domains.
*/
if ( !is_hvm_domain(d) || !cpu_has_vmx )
return capabilities;
capabilities = (1U << XEN_DOMCTL_MONITOR_EVENT_WRITE_CTRLREG) |
(1U << XEN_DOMCTL_MONITOR_EVENT_MOV_TO_MSR) |
(1U << XEN_DOMCTL_MONITOR_EVENT_SOFTWARE_BREAKPOINT) |
(1U << XEN_DOMCTL_MONITOR_EVENT_GUEST_REQUEST);
/* Since we know this is on VMX, we can just call the hvm func */
if ( hvm_is_singlestep_supported() )
capabilities |= (1U << XEN_DOMCTL_MONITOR_EVENT_SINGLESTEP);
return capabilities;
}
int arch_monitor_domctl_event(struct domain *d,
struct xen_domctl_monitor_op *mop);
-23
View File
@@ -44,27 +44,4 @@ void vm_event_set_registers(struct vcpu *v, vm_event_response_t *rsp);
void vm_event_fill_regs(vm_event_request_t *req);
static inline uint32_t vm_event_monitor_get_capabilities(struct domain *d)
{
uint32_t capabilities = 0;
/*
* At the moment only Intel HVM domains are supported. However, event
* delivery could be extended to AMD and PV domains.
*/
if ( !is_hvm_domain(d) || !cpu_has_vmx )
return capabilities;
capabilities = (1U << XEN_DOMCTL_MONITOR_EVENT_WRITE_CTRLREG) |
(1U << XEN_DOMCTL_MONITOR_EVENT_MOV_TO_MSR) |
(1U << XEN_DOMCTL_MONITOR_EVENT_SOFTWARE_BREAKPOINT) |
(1U << XEN_DOMCTL_MONITOR_EVENT_GUEST_REQUEST);
/* Since we know this is on VMX, we can just call the hvm func */
if ( hvm_is_singlestep_supported() )
capabilities |= (1U << XEN_DOMCTL_MONITOR_EVENT_SINGLESTEP);
return capabilities;
}
#endif /* __ASM_X86_VM_EVENT_H__ */
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.