sync with the latest upstream releases

This commit is contained in:
Cong Wang 2012-01-21 12:20:35 +08:00
parent a0f1142b60
commit e494189fbb
9 changed files with 17 additions and 225 deletions

2
.gitignore vendored
View File

@ -3,3 +3,5 @@ kexec-tools-2.0.0.tar.bz2
kexec-tools-po.tar.gz
makedumpfile-1.3.5.tar.gz
/kexec-tools-2.0.2.tar.bz2
/kexec-tools-2.0.3.tar.bz2
/makedumpfile-1.4.1.tar.gz

View File

@ -1,14 +0,0 @@
diff -up kexec-tools-2.0.0/Makefile.in.orig kexec-tools-2.0.0/Makefile.in
--- kexec-tools-2.0.0/Makefile.in.orig 2008-07-14 07:28:19.000000000 -0400
+++ kexec-tools-2.0.0/Makefile.in 2008-08-27 07:49:27.000000000 -0400
@@ -104,8 +104,8 @@ PKGINCLUDEIR=$(INCLUDEDIR)/$(PACKAGE_NAM
MAN_PAGES:= kexec/kexec.8
MAN_PAGES+= kdump/kdump.8
-BINARIES_i386:= $(SBINDIR)/kexec $(PKGLIBDIR)/kexec_test
-BINARIES_x86_64:=$(SBINDIR)/kexec $(PKGLIBDIR)/kexec_test
+BINARIES_i386:= $(SBINDIR)/kexec
+BINARIES_x86_64:=$(SBINDIR)/kexec
BINARIES:=$(SBINDIR)/kexec $(SBINDIR)/kdump $(BINARIES_$(ARCH))
TARGETS:=$(BINARIES) $(MAN_PAGES)

View File

@ -1,66 +0,0 @@
From: Masayuki Igawa <igawa@mxs.nes.nec.co.jp>
Date: Tue, 6 Apr 2010 04:50:45 +0000 (+0900)
Subject: [PATCH] handle !SPARSEMEM_EX properly.
X-Git-Url: http://makedumpfile.git.sourceforge.net/git/gitweb.cgi?p=makedumpfile%2Fmakedumpfile;a=commitdiff_plain;h=27b71566ec11128c5b061a350e467546f2d26be6
[PATCH] handle !SPARSEMEM_EX properly.
In !SPARSEMEM_EX case, the symbol mem_section points a array of struct
mem_section, doesn't point a array of pointer to mem_section[], so I
think the check:
if (!is_kvaddr(mem_sec[SECTION_NR_TO_ROOT(nr)]))
return NOT_KV_ADDR;
in nr_to_section() is not a valid check in this case.
To make the matters worse, if CONFIG_CGROUP_MEM_RES_CTLR is enabled, the
end of struct mem_section is padded with 0.
So, reading mem_section by "rd" of crash will look like:
crash> rd mem_section 128
c08b71e0: c9002003 c9001200 f7000000 00000000
c08b71f0: c9002003 c9001260 f6980000 00000000
c08b7200: c9002003 c90012c0 f6300000 00000000
c08b7210: c9002003 c9001320 f5c80000 00000000
This means nr_to_section() will return 0 when "nr" is 3,7,11,... because
it meets the condition(mem_sec[SECTION_NR_TO_ROOT(nr)] == mem_sec[nr]
== 0 == !is_kvaddr).
As a result, mem_map for section 3,7,11,... cannot be handled properly.
This patch is a fix for this problem. nr_to_section() will check "addr"
by is_kvaddr() later anyway, so this patch just removes the problematic
check.
Signed-off-by: Masayuki Igawa <igawa@mxs.nes.nec.co.jp>
Signed-off-by: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
---
diff -up kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c.orig kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c
--- kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c.orig 2010-04-06 17:01:15.858262785 +0200
+++ kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c 2010-04-06 17:01:15.865290984 +0200
@@ -3550,9 +3550,6 @@ nr_to_section(unsigned long nr, unsigned
{
unsigned long addr;
- if (!is_kvaddr(mem_sec[SECTION_NR_TO_ROOT(nr)]))
- return NOT_KV_ADDR;
-
if (is_sparsemem_extreme())
addr = mem_sec[SECTION_NR_TO_ROOT(nr)] +
(nr & SECTION_ROOT_MASK()) * SIZE(mem_section);
diff -up kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.h.orig kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.h
--- kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.h.orig 2009-11-11 01:44:51.000000000 +0100
+++ kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.h 2010-04-06 17:02:36.471367908 +0200
@@ -449,7 +449,7 @@ do { \
#define KVER_MIN_SHIFT 16
#define KERNEL_VERSION(x,y,z) (((x) << KVER_MAJ_SHIFT) | ((y) << KVER_MIN_SHIFT) | (z))
#define OLDEST_VERSION KERNEL_VERSION(2, 6, 15)/* linux-2.6.15 */
-#define LATEST_VERSION KERNEL_VERSION(2, 6, 31)/* linux-2.6.31 */
+#define LATEST_VERSION KERNEL_VERSION(2, 6, 32)/* linux-2.6.32 */
/*
* vmcoreinfo in /proc/vmcore

View File

@ -1,83 +0,0 @@
diff -up kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c.orig kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c
--- kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c.orig 2009-11-10 19:44:51.000000000 -0500
+++ kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c 2010-03-03 10:33:45.000000000 -0500
@@ -3772,6 +3772,8 @@ initialize_bitmap_memory(void)
int
initial(void)
{
+ int debug_info = FALSE;
+
if (!(vt.mem_flags & MEMORY_XEN) && info->flag_exclude_xen_dom) {
MSG("'-X' option is disable,");
MSG("because %s is not Xen's memory core image.\n", info->name_memory);
@@ -3803,6 +3805,7 @@ initial(void)
if (!read_vmcoreinfo())
return FALSE;
close_vmcoreinfo();
+ debug_info = TRUE;
/*
* Get the debug information for analysis from the kernel file
*/
@@ -3818,6 +3821,8 @@ initial(void)
if (!get_srcfile_info())
return FALSE;
+
+ debug_info = TRUE;
} else {
/*
* Check whether /proc/vmcore contains vmcoreinfo,
@@ -3847,6 +3852,7 @@ initial(void)
if (!read_vmcoreinfo_from_vmcore(info->offset_vmcoreinfo,
info->size_vmcoreinfo, FALSE))
return FALSE;
+ debug_info = TRUE;
}
if (!get_value_for_old_linux())
@@ -3863,31 +3869,25 @@ out:
if (!get_max_mapnr())
return FALSE;
- if ((info->max_dump_level <= DL_EXCLUDE_ZERO) && !info->flag_dmesg) {
- /*
- * The debugging information is unnecessary, because the memory
- * management system will not be analazed.
- */
- if (!get_mem_map_without_mm())
+ if (debug_info) {
+ if (!get_machdep_info())
return FALSE;
- else
- return TRUE;
- }
- if (!get_machdep_info())
- return FALSE;
-
- if (!check_release())
- return FALSE;
+ if (!check_release())
+ return FALSE;
- if (!get_versiondep_info())
- return FALSE;
+ if (!get_versiondep_info())
+ return FALSE;
- if (!get_numnodes())
- return FALSE;
+ if (!get_numnodes())
+ return FALSE;
- if (!get_mem_map())
- return FALSE;
+ if (!get_mem_map())
+ return FALSE;
+ } else {
+ if (!get_mem_map_without_mm())
+ return FALSE;
+ }
return TRUE;
}

View File

@ -1,27 +0,0 @@
diff -up kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.8.orig kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.8
--- kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.8.orig 2009-11-10 19:44:51.000000000 -0500
+++ kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.8 2010-03-22 09:20:57.000000000 -0400
@@ -446,6 +446,10 @@ it is necessary to specfiy [\-x \fIVMLIN
Print debugging message.
.TP
+\fB-b <order>\fR
+cache 2^order pages in ram when generating vmcore info before writing to output
+
+.TP
\fB\-h\fR
Show help message.
diff -up kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c.orig kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c
--- kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c.orig 2010-03-22 09:20:33.000000000 -0400
+++ kexec-tools-2.0.0/makedumpfile-1.3.5/makedumpfile.c 2010-03-22 09:21:06.000000000 -0400
@@ -738,6 +738,9 @@ print_usage(void)
MSG(" [-D]:\n");
MSG(" Print debugging message.\n");
MSG("\n");
+ MSG(" [-b <order>]:\n");
+ MSG(" Specify the block write size of makedumpfile. 2^order pages are cached on each write\n");
+ MSG("\n");
MSG(" [-f]:\n");
MSG(" Overwrite DUMPFILE even if it already exists.\n");
MSG("\n");

View File

@ -1,11 +1,11 @@
--- kexec-tools-2.0.0/makedumpfile-1.3.5/Makefile.orig 2009-11-11 08:44:51.000000000 +0800
+++ kexec-tools-2.0.0/makedumpfile-1.3.5/Makefile 2010-05-30 00:25:17.350869858 +0800
@@ -32,7 +32,7 @@
--- kexec-tools-2.0.1/makedumpfile-1.4.1/Makefile.orig 2009-11-11 08:44:51.000000000 +0800
+++ kexec-tools-2.0.1/makedumpfile-1.4.1/Makefile 2010-05-30 00:25:17.350869858 +0800
@@ -38,7 +38,7 @@ $(OBJ_ARCH): $(SRC_ARCH)
$(CC) $(CFLAGS_ARCH) -c -o ./$@ ./$(@:.o=.c)
makedumpfile: $(SRC) $(OBJ_ARCH)
- $(CC) $(CFLAGS) $(OBJ_ARCH) -o $@ $< -static -ldw -lelf -lz
+ $(CC) $(CFLAGS) $(OBJ_ARCH) -o $@ $< -ldw -lelf -lz
makedumpfile: $(SRC) $(OBJ_PART) $(OBJ_ARCH)
- $(CC) $(CFLAGS) $(LDFLAGS) $(OBJ_PART) $(OBJ_ARCH) -o $@ $< -static -ldw -lbz2 -lebl -ldl -lelf -lz
+ $(CC) $(CFLAGS) $(LDFLAGS) $(OBJ_PART) $(OBJ_ARCH) -o $@ $< -ldw -lbz2 -lebl -ldl -lelf -lz
echo .TH MAKEDUMPFILE 8 \"$(DATE)\" \"makedumpfile v$(VERSION)\" \"Linux System Administrator\'s Manual\" > temp.8
grep -v "^.TH MAKEDUMPFILE 8" makedumpfile.8 >> temp.8
mv temp.8 makedumpfile.8

View File

@ -1,12 +0,0 @@
diff -up kexec-tools-2.0.2/purgatory/Makefile.orig kexec-tools-2.0.2/purgatory/Makefile
--- kexec-tools-2.0.2/purgatory/Makefile.orig 2011-06-24 15:01:00.228479843 -0400
+++ kexec-tools-2.0.2/purgatory/Makefile 2011-06-24 15:01:06.614650435 -0400
@@ -56,7 +56,7 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATO
-I$(srcdir)/include \
-I$(shell $(CC) -print-file-name=include)
$(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\
- --no-undefined -nostartfiles -nostdlib -nodefaultlibs \
+ -nostartfiles -nostdlib -nodefaultlibs \
-e purgatory_start -r
$(PURGATORY): $(PURGATORY_OBJS)

View File

@ -1,10 +1,10 @@
Name: kexec-tools
Version: 2.0.2
Version: 2.0.3
Release: 32%{?dist}
License: GPLv2
Group: Applications/System
Summary: The kexec/kdump userspace component.
Source0: http://www.kernel.org/pub/linux/kernel/people/horms/kexec-tools/%{name}-%{version}.tar.bz2
Source0: http://kernel.org/pub/linux/utils/kernel/kexec/%{name}-%{version}.tar.bz2
Source1: kdumpctl
Source2: kdump.sysconfig
Source3: kdump.sysconfig.x86_64
@ -13,7 +13,7 @@ Source5: kdump.sysconfig.ppc64
Source6: kdump.sysconfig.ia64
Source7: mkdumprd
Source8: kdump.conf
Source9: http://downloads.sourceforge.net/project/makedumpfile/makedumpfile/1.3.5/makedumpfile-1.3.5.tar.gz
Source9: http://downloads.sourceforge.net/project/makedumpfile/makedumpfile/1.4.1/makedumpfile-1.4.1.tar.gz
Source10: kexec-kdump-howto.txt
Source11: firstboot_kdump.py
Source12: mkdumprd.8
@ -71,12 +71,7 @@ Obsoletes: diskdumputils netdump
#
# Patches 601 onward are generic patches
#
Patch601: kexec-tools-2.0.0-disable-kexec-test.patch
Patch602: kexec-tools-2.0.0-makedumpfile-dynamic-build.patch
Patch603: kexec-tools-2.0.0-makedumpfile-2.6.32-utsname.patch
Patch604: kexec-tools-2.0.0-makedumpfile-boption.patch
Patch605: kexec-tools-2.0.0-makedumpfile-2.6.32-sparsemem.patch
Patch606: kexec-tools-2.0.2-purgatory-makefile.patch
Patch601: kexec-tools-2.0.0-makedumpfile-dynamic-build.patch
%description
kexec-tools provides /sbin/kexec binary that facilitates a new
@ -93,11 +88,6 @@ tar -z -x -v -f %{SOURCE9}
%patch601 -p1
%patch602 -p1
%patch603 -p1
%patch604 -p1
%patch605 -p1
%patch606 -p1
tar -z -x -v -f %{SOURCE13}
@ -127,7 +117,7 @@ cp %{SOURCE10} .
make
%ifarch %{ix86} x86_64 ia64 ppc64
make -C makedumpfile-1.3.5
make -C makedumpfile-1.4.1
%endif
make -C kexec-tools-po
@ -160,8 +150,8 @@ install -m 644 %{SOURCE15} $RPM_BUILD_ROOT%{_mandir}/man5/kdump.conf.5
install -m 644 %{SOURCE16} $RPM_BUILD_ROOT%{_unitdir}/kdump.service
%ifarch %{ix86} x86_64 ia64 ppc64
install -m 755 makedumpfile-1.3.5/makedumpfile $RPM_BUILD_ROOT/sbin/makedumpfile
install -m 644 makedumpfile-1.3.5/makedumpfile.8.gz $RPM_BUILD_ROOT/%{_mandir}/man8/makedumpfile.8.gz
install -m 755 makedumpfile-1.4.1/makedumpfile $RPM_BUILD_ROOT/sbin/makedumpfile
install -m 644 makedumpfile-1.4.1/makedumpfile.8.gz $RPM_BUILD_ROOT/%{_mandir}/man8/makedumpfile.8.gz
%endif
make -C kexec-tools-po install DESTDIR=$RPM_BUILD_ROOT
%find_lang %{name}

View File

@ -3,3 +3,5 @@ d9f2ecd3c3307905f24130a25816e6cc kexec-tools-2.0.0.tar.bz2
e3a813bd6d7dace903a05c1296e20d57 makedumpfile-1.3.5.tar.gz
8e359dd03731b93a2082bd37cc2a4a4c kexec-tools-2.0.2.tar.bz2
8b9e1ac8304c1f47f239a6225421ec4e dracut-files.tbz2
b3ced2097ce3981abba38ceedc84f939 kexec-tools-2.0.3.tar.bz2
967f89bb947ca4db78f51beeaaee0bd8 makedumpfile-1.4.1.tar.gz