[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH 1/4] xen: Take into account Xen control interface changes since Xen Ver. 4.1



xc_interface_open() receive three arguments instead of void and returns
pointer to xc_interface type instead of int since Xen Ver. 4.1. Take into
account that and allow kexec-tools compilation with all versions of Xen.

Signed-off-by: Daniel Kiper <dkiper@xxxxxxxxxxxx>
---
 kexec/crashdump-xen.c |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/kexec/crashdump-xen.c b/kexec/crashdump-xen.c
index b347764..9dfabf8 100644
--- a/kexec/crashdump-xen.c
+++ b/kexec/crashdump-xen.c
@@ -126,19 +126,32 @@ unsigned long xen_architecture(struct crash_elf_info 
*elf_info)
 {
        unsigned long machine = elf_info->machine;
 #ifdef HAVE_LIBXENCTRL
-       int xc, rc;
+       int rc;
        xen_capabilities_info_t capabilities;
+#ifdef XENCTRL_HAS_XC_INTERFACE
+       xc_interface *xc;
+#else
+       int xc;
+#endif
 
        if (!xen_present())
                goto out;
 
        memset(capabilities, '0', XEN_CAPABILITIES_INFO_LEN);
 
+#ifdef XENCTRL_HAS_XC_INTERFACE
+       xc = xc_interface_open(NULL, NULL, 0);
+       if ( !xc ) {
+               fprintf(stderr, "failed to open xen control interface.\n");
+               goto out;
+       }
+#else
        xc = xc_interface_open();
        if ( xc == -1 ) {
                fprintf(stderr, "failed to open xen control interface.\n");
                goto out;
        }
+#endif
 
        rc = xc_version(xc, XENVER_capabilities, &capabilities[0]);
        if ( rc == -1 ) {
-- 
1.5.6.5

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.