aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/libxc/xc_misc.c7
-rw-r--r--tools/libxc/xenctrl.h3
-rw-r--r--tools/tests/xen-access/xen-access.c4
3 files changed, 10 insertions, 4 deletions
diff --git a/tools/libxc/xc_misc.c b/tools/libxc/xc_misc.c
index a029d791ba..405e619d90 100644
--- a/tools/libxc/xc_misc.c
+++ b/tools/libxc/xc_misc.c
@@ -602,7 +602,8 @@ int xc_hvm_get_mem_access(
}
int xc_hvm_inject_trap(
- xc_interface *xch, domid_t dom, int vcpu, uint32_t trap, uint32_t error_code,
+ xc_interface *xch, domid_t dom, int vcpu, uint32_t vector,
+ uint32_t type, uint32_t error_code, uint32_t inslen,
uint64_t cr2)
{
DECLARE_HYPERCALL;
@@ -618,8 +619,10 @@ int xc_hvm_inject_trap(
arg->domid = dom;
arg->vcpuid = vcpu;
- arg->trap = trap;
+ arg->vector = vector;
+ arg->type = type;
arg->error_code = error_code;
+ arg->inslen = inslen;
arg->cr2 = cr2;
hypercall.op = __HYPERVISOR_hvm_op;
diff --git a/tools/libxc/xenctrl.h b/tools/libxc/xenctrl.h
index 3bbc8279ce..fe1431ac1b 100644
--- a/tools/libxc/xenctrl.h
+++ b/tools/libxc/xenctrl.h
@@ -1578,7 +1578,8 @@ int xc_hvm_get_mem_access(
* resumes.
*/
int xc_hvm_inject_trap(
- xc_interface *xch, domid_t dom, int vcpu, uint32_t trap, uint32_t error_code,
+ xc_interface *xch, domid_t dom, int vcpu, uint32_t vector,
+ uint32_t type, uint32_t error_code, uint32_t inslen,
uint64_t cr2);
/*
diff --git a/tools/tests/xen-access/xen-access.c b/tools/tests/xen-access/xen-access.c
index 906f46f25e..e2c8d5e5a4 100644
--- a/tools/tests/xen-access/xen-access.c
+++ b/tools/tests/xen-access/xen-access.c
@@ -662,7 +662,9 @@ int main(int argc, char *argv[])
req.vcpu_id);
/* Reinject */
- rc = xc_hvm_inject_trap(xch, domain_id, req.vcpu_id, 3, -1, 0);
+ rc = xc_hvm_inject_trap(
+ xch, domain_id, req.vcpu_id, 3,
+ HVMOP_TRAP_hw_exc, -1, 0, 0);
if (rc < 0)
{
ERROR("Error %d injecting int3\n", rc);