aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxc/xc_dom_x86.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/libxc/xc_dom_x86.c')
-rw-r--r--tools/libxc/xc_dom_x86.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/tools/libxc/xc_dom_x86.c b/tools/libxc/xc_dom_x86.c
index 41f59d3dd1..7cc2ff2411 100644
--- a/tools/libxc/xc_dom_x86.c
+++ b/tools/libxc/xc_dom_x86.c
@@ -54,24 +54,17 @@ const char *xc_domain_get_native_protocol(xc_interface *xch,
int ret;
uint32_t guest_width;
const char *protocol;
- DECLARE_DOMCTL;
- memset(&domctl, 0, sizeof(domctl));
- domctl.domain = domid;
- domctl.cmd = XEN_DOMCTL_get_address_size;
-
- ret = do_domctl(xch, &domctl);
+ ret = xc_domain_get_guest_width(xch, domid, &guest_width);
if ( ret )
return NULL;
- guest_width = domctl.u.address_size.size;
-
switch (guest_width) {
- case 32: /* 32 bit guest */
+ case 4: /* 32 bit guest */
protocol = XEN_IO_PROTO_ABI_X86_32;
break;
- case 64: /* 64 bit guest */
+ case 8: /* 64 bit guest */
protocol = XEN_IO_PROTO_ABI_X86_64;
break;
default: