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

[Xen-changelog] [xen master] tools: add configure --with-dumpdir=DIR option



commit bf36d0792032a0245e4a17a64c8b9eb9e056f282
Author:     Olaf Hering <olaf@xxxxxxxxx>
AuthorDate: Mon May 11 15:33:51 2015 +0000
Commit:     Ian Campbell <ian.campbell@xxxxxxxxxx>
CommitDate: Thu May 21 15:57:26 2015 +0100

    tools: add configure --with-dumpdir=DIR option
    
    The current base directory /var/xen/dump for domU dumps will be patched
    to /var/lib/xen/dump by most distros to follow FHS.
    
    This change does three things:
     - change the default from /var/xen/dump to /var/lib/xen/dump
     - provide a configure option to avoid patching the source.
     - update docs to refer to the new default location
    
    Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>
    Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
    Cc: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
    Cc: Ian Campbell <ian.campbell@xxxxxxxxxx>
    Cc: Wei Liu <wei.liu2@xxxxxxxxxx>
    Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx>
    Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
    [ ijc -- s,/var,LOCALSTATEDIR, in help test, ran autogen.sh ]
---
 Config.mk                |    2 +-
 INSTALL                  |    4 ++++
 config/Paths.mk.in       |    1 +
 configure                |   16 ++++++++++++++++
 docs/man/xl.cfg.pod.5    |    6 +++---
 docs/man/xl.pod.1        |    2 +-
 m4/paths.m4              |    9 +++++++++
 tools/Makefile           |    2 +-
 tools/configure          |   16 ++++++++++++++++
 tools/libxl/xl_cmdimpl.c |    2 +-
 10 files changed, 53 insertions(+), 7 deletions(-)

diff --git a/Config.mk b/Config.mk
index 46928ca..b21ccaa 100644
--- a/Config.mk
+++ b/Config.mk
@@ -159,7 +159,7 @@ endef
 
 BUILD_MAKE_VARS := sbindir bindir LIBEXEC LIBEXEC_BIN libdir SHAREDIR \
                    XENFIRMWAREDIR XEN_CONFIG_DIR XEN_SCRIPT_DIR XEN_LOCK_DIR \
-                   XEN_RUN_DIR XEN_PAGING_DIR
+                   XEN_RUN_DIR XEN_PAGING_DIR XEN_DUMP_DIR
 
 buildmakevars2file = $(eval $(call buildmakevars2file-closure,$(1)))
 define buildmakevars2file-closure
diff --git a/INSTALL b/INSTALL
index a0f2e7b..10cf879 100644
--- a/INSTALL
+++ b/INSTALL
@@ -128,6 +128,10 @@ original xenstored will be used. Valid names are xenstored 
and
 oxenstored.
   --with-xenstored=name
 
+The path where to store core dumps for domUs which are configured with
+coredump-destroy or coredump-restart can be specified with this option.
+  --with-xen-dumpdir=DIR
+
 Instead of starting the tools in dom0 with sysv runlevel scripts they
 can also be started by systemd. If this option is enabled xenstored will
 receive the communication socked directly from systemd. So starting it
diff --git a/config/Paths.mk.in b/config/Paths.mk.in
index ddd72df..d36504f 100644
--- a/config/Paths.mk.in
+++ b/config/Paths.mk.in
@@ -48,6 +48,7 @@ CONFIG_LEAF_DIR          := @CONFIG_LEAF_DIR@
 BASH_COMPLETION_DIR      := $(CONFIG_DIR)/bash_completion.d
 XEN_LOCK_DIR             := @XEN_LOCK_DIR@
 XEN_PAGING_DIR           := @XEN_PAGING_DIR@
+XEN_DUMP_DIR             := @XEN_DUMP_DIR@
 
 XENFIRMWAREDIR           := @XENFIRMWAREDIR@
 
diff --git a/configure b/configure
index 8a084c8..80b27d6 100755
--- a/configure
+++ b/configure
@@ -594,6 +594,7 @@ stubdom
 tools
 xen
 subdirs
+XEN_DUMP_DIR
 XEN_PAGING_DIR
 XEN_LOCK_DIR
 XEN_SCRIPT_DIR
@@ -658,6 +659,7 @@ ac_user_opts='
 enable_option_checking
 with_initddir
 with_sysconfig_leaf_dir
+with_xen_dumpdir
 enable_xen
 enable_tools
 enable_stubdom
@@ -1297,6 +1299,8 @@ Optional Packages:
                           options for runlevel scripts and daemons such as
                           xenstored. This should be either "sysconfig" or
                           "default". [sysconfig]
+  --with-xen-dumpdir=DIR  Path to directory for domU crash dumps.
+                          [LOCALSTATEDIR/lib/xen/dump]
 
 Report bugs to <xen-devel@xxxxxxxxxxxxx>.
 Xen Hypervisor home page: <http://www.xen.org/>.
@@ -1919,6 +1923,15 @@ fi
 CONFIG_LEAF_DIR=$config_leaf_dir
 
 
+
+# Check whether --with-xen-dumpdir was given.
+if test "${with_xen_dumpdir+set}" = set; then :
+  withval=$with_xen_dumpdir; xen_dumpdir_path=$withval
+else
+  xen_dumpdir_path=$localstatedir/lib/xen/dump
+fi
+
+
 if test "$libexecdir" = '${exec_prefix}/libexec' ; then
     case "$host_os" in
          *netbsd*) ;;
@@ -1968,6 +1981,9 @@ esac
 XEN_PAGING_DIR=$localstatedir/lib/xen/xenpaging
 
 
+XEN_DUMP_DIR=$xen_dumpdir_path
+
+
 
 case "$host_cpu" in
     i[3456]86|x86_64)
diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
index 2267884..a3e0e2e 100644
--- a/docs/man/xl.cfg.pod.5
+++ b/docs/man/xl.cfg.pod.5
@@ -360,12 +360,12 @@ destroy`.
 
 =item B<coredump-destroy>
 
-write a "coredump" of the domain to F</var/xen/dump/NAME> and then
+write a "coredump" of the domain to F</var/lib/xen/dump/NAME> and then
 destroy the domain.
 
 =item B<coredump-restart>
 
-write a "coredump" of the domain to F</var/xen/dump/NAME> and then
+write a "coredump" of the domain to F</var/lib/xen/dump/NAME> and then
 restart the domain.
 
 =back
@@ -1707,7 +1707,7 @@ See L<qemu(1)> for more information.
 =head1 FILES
 
 F</etc/xen/NAME.cfg>
-F</var/xen/dump/NAME>
+F</var/lib/xen/dump/NAME>
 
 =head1 BUGS
 
diff --git a/docs/man/xl.pod.1 b/docs/man/xl.pod.1
index e16dbf7..b2bc362 100644
--- a/docs/man/xl.pod.1
+++ b/docs/man/xl.pod.1
@@ -280,7 +280,7 @@ Change the domain name of I<domain-id> to I<new-name>.
 Dumps the virtual machine's memory for the specified domain to the
 I<filename> specified, without pausing the domain.  The dump file will
 be written to a distribution specific directory for dump files.  Such
-as: /var/lib/xen/dump or /var/xen/dump.
+as: /var/lib/xen/dump.
 
 =item B<help> [I<--long>]
 
diff --git a/m4/paths.m4 b/m4/paths.m4
index db74f55..63e0f6b 100644
--- a/m4/paths.m4
+++ b/m4/paths.m4
@@ -62,6 +62,12 @@ AC_ARG_WITH([sysconfig-leaf-dir],
 CONFIG_LEAF_DIR=$config_leaf_dir
 AC_SUBST(CONFIG_LEAF_DIR)
 
+AC_ARG_WITH([xen-dumpdir],
+    AS_HELP_STRING([--with-xen-dumpdir=DIR],
+    [Path to directory for domU crash dumps. [LOCALSTATEDIR/lib/xen/dump]]),
+    [xen_dumpdir_path=$withval],
+    [xen_dumpdir_path=$localstatedir/lib/xen/dump])
+
 if test "$libexecdir" = '${exec_prefix}/libexec' ; then
     case "$host_os" in
          *netbsd*) ;;
@@ -113,4 +119,7 @@ AC_SUBST(XEN_LOCK_DIR)
 
 XEN_PAGING_DIR=$localstatedir/lib/xen/xenpaging
 AC_SUBST(XEN_PAGING_DIR)
+
+XEN_DUMP_DIR=$xen_dumpdir_path
+AC_SUBST(XEN_DUMP_DIR)
 ])
diff --git a/tools/Makefile b/tools/Makefile
index 383d4ca..45cb4b2 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -58,7 +58,7 @@ build all: subdirs-all
 
 .PHONY: install
 install: subdirs-install
-       $(INSTALL_DIR) $(DESTDIR)/var/xen/dump
+       $(INSTALL_DIR) $(DESTDIR)$(XEN_DUMP_DIR)
        $(INSTALL_DIR) $(DESTDIR)/var/log/xen
        $(INSTALL_DIR) $(DESTDIR)/var/lib/xen
 
diff --git a/tools/configure b/tools/configure
index dfd8175..4c2928d 100755
--- a/tools/configure
+++ b/tools/configure
@@ -711,6 +711,7 @@ ocamltools
 monitors
 githttp
 rpath
+XEN_DUMP_DIR
 XEN_PAGING_DIR
 XEN_LOCK_DIR
 XEN_SCRIPT_DIR
@@ -785,6 +786,7 @@ enable_option_checking
 enable_largefile
 with_initddir
 with_sysconfig_leaf_dir
+with_xen_dumpdir
 enable_rpath
 enable_githttp
 enable_monitors
@@ -1487,6 +1489,8 @@ Optional Packages:
                           options for runlevel scripts and daemons such as
                           xenstored. This should be either "sysconfig" or
                           "default". [sysconfig]
+  --with-xen-dumpdir=DIR  Path to directory for domU crash dumps.
+                          [LOCALSTATEDIR/lib/xen/dump]
   --with-linux-backend-modules="mod1 mod2"
                           List of Linux backend module or modalias names to be
                           autoloaded on startup.
@@ -3883,6 +3887,15 @@ fi
 CONFIG_LEAF_DIR=$config_leaf_dir
 
 
+
+# Check whether --with-xen-dumpdir was given.
+if test "${with_xen_dumpdir+set}" = set; then :
+  withval=$with_xen_dumpdir; xen_dumpdir_path=$withval
+else
+  xen_dumpdir_path=$localstatedir/lib/xen/dump
+fi
+
+
 if test "$libexecdir" = '${exec_prefix}/libexec' ; then
     case "$host_os" in
          *netbsd*) ;;
@@ -3932,6 +3945,9 @@ esac
 XEN_PAGING_DIR=$localstatedir/lib/xen/xenpaging
 
 
+XEN_DUMP_DIR=$xen_dumpdir_path
+
+
 
 # Enable/disable options
 
diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
index 186c4dd..c858068 100644
--- a/tools/libxl/xl_cmdimpl.c
+++ b/tools/libxl/xl_cmdimpl.c
@@ -2324,7 +2324,7 @@ static int handle_domain_death(uint32_t *r_domid,
         char *corefile;
         int rc;
 
-        if (asprintf(&corefile, "/var/xen/dump/%s", d_config->c_info.name) < 
0) {
+        if (asprintf(&corefile, XEN_DUMP_DIR "/%s", d_config->c_info.name) < 
0) {
             LOG("failed to construct core dump path");
         } else {
             LOG("dumping core to %s", corefile);
--
generated by git-patchbot for /home/xen/git/xen.git#master

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

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