diff --git a/kexec-tools-2.0.10.tar.xz b/kexec-tools-2.0.10.tar.xz deleted file mode 100644 index a5cfceb..0000000 --- a/kexec-tools-2.0.10.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e23e4149712c861b2755e268a89d2e73a6cd1af4abc362a1ce419e212d19a1a3 -size 273104 diff --git a/kexec-tools-2.0.12.tar.xz b/kexec-tools-2.0.12.tar.xz new file mode 100644 index 0000000..22c54a6 --- /dev/null +++ b/kexec-tools-2.0.12.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14ce67b6242426a7ded10f58b7d29d3cfef5c1379850e8ba3816bb42053f920d +size 274776 diff --git a/kexec-tools-load-crash-kernel-high.patch b/kexec-tools-load-crash-kernel-high.patch deleted file mode 100644 index 1b323f6..0000000 --- a/kexec-tools-load-crash-kernel-high.patch +++ /dev/null @@ -1,97 +0,0 @@ -From: Petr Tesarik -Date: Thu Sep 24 08:48:52 2015 +0200 -Subject: Load crash kernel high on x86 -References: bsc#946365 -Patch-mainline: post-v2.0.10 -Git-commit: 4fbf781eb0383a491906d3851b066657b29c2816 - -There may be more than one crash kernel regions on x86. Currently, -kexec-tools picks the largest one. If high reservation is smaller -than low, it will try to load panic kernel low. However, the kexec -syscall checks that target address is within crashk_res boundaries, -so attempts to load crash kernel low result in -EADDRNOTAVAIL, and -kexec prints out this error message: - -kexec_load failed: Cannot assign requested address - -Looking at the logic in arch/x86/kernel/setup.c, there are only two -possible layouts: - - 1. crashk_res is below 4G, and there is only one region, - 2. crashk_res is above 4G, and crashk_low_res is below 4G - -In either case, kexec-tools must pick the highest region. - -Changelog: - - * v3: rename function to get_crash_kernel_load_range - * v2: remove unnecessary local variables - -Signed-off-by: Petr Tesarik -Signed-off-by: Simon Horman - ---- - kexec/arch/i386/crashdump-x86.c | 21 +++++++-------------- - kexec/arch/i386/kexec-x86-common.c | 4 ++-- - kexec/kexec.h | 2 +- - 3 files changed, 10 insertions(+), 17 deletions(-) - ---- a/kexec/arch/i386/crashdump-x86.c -+++ b/kexec/arch/i386/crashdump-x86.c -@@ -1017,24 +1017,17 @@ int load_crashdump_segments(struct kexec - return 0; - } - --int get_max_crash_kernel_limit(uint64_t *start, uint64_t *end) -+/* On x86, the kernel may make a low reservation in addition to the -+ * normal reservation. However, the kernel refuses to load the panic -+ * kernel to low memory, so always choose the highest range. -+ */ -+int get_crash_kernel_load_range(uint64_t *start, uint64_t *end) - { -- int i, idx = -1; -- unsigned long sz_max = 0, sz; -- - if (!crash_reserved_mem_nr) - return -1; - -- for (i = crash_reserved_mem_nr - 1; i >= 0; i--) { -- sz = crash_reserved_mem[i].end - crash_reserved_mem[i].start +1; -- if (sz <= sz_max) -- continue; -- sz_max = sz; -- idx = i; -- } -- -- *start = crash_reserved_mem[idx].start; -- *end = crash_reserved_mem[idx].end; -+ *start = crash_reserved_mem[crash_reserved_mem_nr - 1].start; -+ *end = crash_reserved_mem[crash_reserved_mem_nr - 1].end; - - return 0; - } ---- a/kexec/arch/i386/kexec-x86-common.c -+++ b/kexec/arch/i386/kexec-x86-common.c -@@ -361,9 +361,9 @@ int get_memory_ranges(struct memory_rang - !(kexec_flags & KEXEC_PRESERVE_CONTEXT)) { - uint64_t start, end; - -- ret = get_max_crash_kernel_limit(&start, &end); -+ ret = get_crash_kernel_load_range(&start, &end); - if (ret != 0) { -- fprintf(stderr, "get_max_crash_kernel_limit failed.\n"); -+ fprintf(stderr, "get_crash_kernel_load_range failed.\n"); - return -1; - } - ---- a/kexec/kexec.h -+++ b/kexec/kexec.h -@@ -286,7 +286,7 @@ int arch_process_options(int argc, char - int arch_compat_trampoline(struct kexec_info *info); - void arch_update_purgatory(struct kexec_info *info); - int is_crashkernel_mem_reserved(void); --int get_max_crash_kernel_limit(uint64_t *start, uint64_t *end); -+int get_crash_kernel_load_range(uint64_t *start, uint64_t *end); - char *get_command_line(void); - - int kexec_iomem_for_each_line(char *match, diff --git a/kexec-tools-xen-static.patch b/kexec-tools-xen-static.patch index 6293096..5098056 100644 --- a/kexec-tools-xen-static.patch +++ b/kexec-tools-xen-static.patch @@ -9,18 +9,27 @@ Signed-off-by: Bernhard Walle ================================================================================ --- - configure.ac | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) + configure.ac | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) --- a/configure.ac +++ b/configure.ac -@@ -164,7 +164,8 @@ fi +@@ -163,9 +163,17 @@ fi + dnl find Xen control stack libraries if test "$with_xen" = yes ; then ++ if pkg-config --exists 'xenlight >= 4.7' ; then AC_CHECK_HEADER(xenctrl.h, - [AC_CHECK_LIB(xenctrl, xc_kexec_load, , + [AC_CHECK_LIB(xenctrl, xc_kexec_load, -+ [AC_DEFINE([HAVE_LIBXENCTRL], [1], [libxenctrl]) [LIBS="-Wl,-Bstatic -lxenctrl -Wl,-Bdynamic -lpthread -ldl $LIBS"]], ++ [AC_DEFINE([HAVE_LIBXENCTRL], [1], [libxenctrl]) [LIBS="-Wl,-Bstatic -lxenctrl -lxencall -lxentoollog -lxenforeignmemory -Wl,-Bdynamic -lpthread -ldl $LIBS"]], AC_MSG_NOTICE([Xen support disabled]))]) ++ else ++ AC_CHECK_HEADER(xenctrl.h, ++ [AC_CHECK_LIB(xenctrl, xc_kexec_load, ++ [AC_DEFINE([HAVE_LIBXENCTRL], [1], [libxenctrl]) [LIBS="-Wl,-Bstatic -lxenctrl -Wl,-Bdynamic -lpthread -ldl $LIBS"]], ++ AC_MSG_NOTICE([Xen support disabled]))]) ++ fi fi + dnl ---Sanity checks diff --git a/kexec-tools.changes b/kexec-tools.changes index 26c91c6..38eaa6e 100644 --- a/kexec-tools.changes +++ b/kexec-tools.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +Fri Jun 3 18:16:51 UTC 2016 - tonyj@suse.com + +- Update to version 2.0.12 (FATE#320915, bsc#980545) + Changelog: http://git.kernel.org/cgit/utils/kernel/kexec/kexec-tools.git/log/?id=refs/tags/v2.0.10..v2.0.12 + + Drop following patches (upstream): + kexec-tools-load-crash-kernel-high.patch + +- Fix pkg-config to check >= 4.7 rather than > 4.6 for xenlight + +- Specifically name Files in specfile rather than using glob. + +------------------------------------------------------------------- +Tue May 3 15:17:15 UTC 2016 - olaf@aepfle.de + +- Adjust linking to libxenctrl to xen-4.7 API + ------------------------------------------------------------------- Thu Dec 10 16:33:20 CET 2015 - tiwai@suse.de diff --git a/kexec-tools.spec b/kexec-tools.spec index df56f48..622321c 100644 --- a/kexec-tools.spec +++ b/kexec-tools.spec @@ -1,7 +1,7 @@ # # spec file for package kexec-tools # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -28,7 +28,7 @@ Requires(postun): coreutils Summary: Tools for fast kernel loading License: GPL-2.0+ Group: System/Kernel -Version: 2.0.10 +Version: 2.0.12 Release: 0 Source: ftp://kernel.org/pub/linux/utils/kernel/kexec/%{name}-%{version}.tar.xz Source1: kexec-bootloader @@ -40,7 +40,6 @@ Patch2: %{name}-xen-balloon-up.patch Patch3: %{name}-disable-test.patch Patch4: %{name}-enable-aarch64.patch Patch5: %{name}-enable-aarch64-fixup.patch -Patch6: %{name}-load-crash-kernel-high.patch Url: ftp://kernel.org/pub/linux/utils/kernel/kexec/%{name}-%{version}.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -50,6 +49,7 @@ BuildRequires: automake BuildRequires: libxslt BuildRequires: zlib-devel %ifarch x86_64 +BuildRequires: pkg-config BuildRequires: xen-devel %endif ExclusiveArch: ppc64le aarch64 %ix86 x86_64 ia64 ppc ppc64 s390 s390x %arm sh mips mipsel m68k @@ -67,7 +67,6 @@ the loaded kernel after it panics. %patch3 -p1 %patch4 -p1 %patch5 -p1 -%patch6 -p1 %build # disable as-needed @@ -125,10 +124,13 @@ ln -s %{_sbindir}/kexec $RPM_BUILD_ROOT/sbin %doc AUTHORS COPYING News TODO doc %doc %{_mandir}/man*/* #UsrMerge -/sbin/* +/sbin/kdump +/sbin/kexec #EndUsrMerge -%{_sbindir}/* +%{_sbindir}/kdump +%{_sbindir}/kexec %{_sbindir}/kexec-bootloader +%{_sbindir}/vmcore-dmesg %{_unitdir}/kexec-load.service %changelog