fix QEMU build on Xen/ARM

xen_get_vmport_regs_pfn should take a xen_pfn_t argument, not an
unsigned long argument (in fact xen_pfn_t is defined as uint64_t on
ARM).

Also use xc_hvm_param_get instead of the deprecated xc_get_hvm_param.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Reviewed-by: Don Slutz <dslutz@verizon.com>
This commit is contained in:
Stefano Stabellini 2015-01-23 12:09:47 +00:00
parent b3a4755a67
commit d01a5a3fe1
1 changed files with 9 additions and 4 deletions

View File

@ -168,14 +168,19 @@ void xen_shutdown_fatal_error(const char *fmt, ...) GCC_FMT_ATTR(1, 2);
#ifdef HVM_PARAM_VMPORT_REGS_PFN
static inline int xen_get_vmport_regs_pfn(XenXC xc, domid_t dom,
unsigned long *vmport_regs_pfn)
xen_pfn_t *vmport_regs_pfn)
{
return xc_get_hvm_param(xc, dom, HVM_PARAM_VMPORT_REGS_PFN,
vmport_regs_pfn);
int rc;
uint64_t value;
rc = xc_hvm_param_get(xc, dom, HVM_PARAM_VMPORT_REGS_PFN, &value);
if (rc >= 0) {
*vmport_regs_pfn = (xen_pfn_t) value;
}
return rc;
}
#else
static inline int xen_get_vmport_regs_pfn(XenXC xc, domid_t dom,
unsigned long *vmport_regs_pfn)
xen_pfn_t *vmport_regs_pfn)
{
return -ENOSYS;
}