]> xenbits.xensource.com Git - xen.git/commitdiff
libxenstat: honour XEN_RUN_DIR
authorWei Liu <wei.liu2@citrix.com>
Mon, 11 Jul 2016 17:28:08 +0000 (18:28 +0100)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Mon, 15 Aug 2016 10:19:21 +0000 (11:19 +0100)
This is because libxl uses XEN_RUN_DIR to generate the socket path for
libxenstat while libxenstat itself uses hard-coded path, which is not
necessarily the same path as XEN_RUN_DIR.  The default configuration
happened to work because XEN_RUN_DIR defaulted to /var/run/xen, which
matched the hard-coded path.

We should make libxenstat use XEN_RUN_DIR so that it works with
non-default configuration.

Generate a _paths.h because it is required to make this change work.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
(cherry picked from commit dedb221889dbdd96f1d3c1155c3eb492d329bb53)

.gitignore
tools/xenstat/libxenstat/Makefile
tools/xenstat/libxenstat/src/xenstat_qmp.c

index 73478014ad406d9e2be3dd57a1e7929adeac43a4..2156b80a5ec15bc31cd78cca8b2e498c3ad6e747 100644 (file)
@@ -213,6 +213,7 @@ tools/xenmon/xentrace_setmask
 tools/xenmon/xenbaked
 tools/xenpaging/xenpaging
 tools/xenpmd/xenpmd
+tools/xenstat/libxenstat/src/_paths.h
 tools/xenstat/xentop/xentop
 tools/xenstore/xenstore
 tools/xenstore/xenstore-chmod
index 850d24ab2bcc03636901a2bf89003f56360f0601..213d998225a20d9a6d63f718236a1d2a7bf8235b 100644 (file)
@@ -40,6 +40,8 @@ LDLIBS-$(CONFIG_SunOS) += -lkstat
 .PHONY: all
 all: $(LIB) $(SHLIB) $(SHLIB_LINKS)
 
+$(OBJECTS-y): src/_paths.h
+
 $(LIB): $(OBJECTS-y)
        $(AR) rc $@ $^
        $(RANLIB) $@
@@ -135,9 +137,12 @@ endif
 .PHONY: clean
 clean:
        rm -f $(LIB) $(SHLIB) $(SHLIB_LINKS) $(OBJECTS-y) \
-             $(BINDINGS) $(BINDINGSRC) $(DEPS)
+             $(BINDINGS) $(BINDINGSRC) $(DEPS) src/_paths.h
 
 .PHONY: distclean
 distclean: clean
 
 -include $(DEPS)
+
+genpath-target = $(call buildmakevars2header,src/_paths.h)
+$(eval $(genpath-target))
index c12929a63e2cd2527e1e8c341834094265300483..a87c9373c2951cc85180968e11aeb911d1f09ee4 100644 (file)
@@ -23,6 +23,7 @@
 #include <xenctrl.h>
 
 #include "xenstat_priv.h"
+#include "_paths.h"
 
 #ifdef HAVE_YAJL_YAJL_VERSION_H
 #  include <yajl/yajl_version.h>
@@ -398,7 +399,7 @@ static void read_attributes_qdisk_dom(xenstat_node *node, domid_t domain)
        free(val);
 
        /* Connect to this VMs QMP socket */
-       snprintf(path, sizeof(path), "/var/run/xen/qmp-libxenstat-%i", domain);
+       snprintf(path, sizeof(path), XEN_RUN_DIR "/qmp-libxenstat-%i", domain);
        if ((qfd = qmp_connect(path)) < 0)
                return;