rpms/kexec-tools/F-7 kexec-tools-1.101-x86-add_buffer_retry.patch, NONE, 1.1 kexec-tools.spec, 1.85, 1.86 mkdumprd, 1.13, 1.14 sources, 1.5, 1.6

Neil Horman (nhorman) fedora-extras-commits at redhat.com
Wed Aug 1 18:27:45 UTC 2007


Author: nhorman

Update of /cvs/extras/rpms/kexec-tools/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv5791

Modified Files:
	kexec-tools.spec mkdumprd sources 
Added Files:
	kexec-tools-1.101-x86-add_buffer_retry.patch 
Log Message:
Resolves: bz 250449

kexec-tools-1.101-x86-add_buffer_retry.patch:

--- NEW FILE kexec-tools-1.101-x86-add_buffer_retry.patch ---
--- kexec-tools-1.101/kexec/arch/i386/crashdump-x86.c.orig	2007-07-17 08:33:59.000000000 -0400
+++ kexec-tools-1.101/kexec/arch/i386/crashdump-x86.c	2007-07-17 08:34:13.000000000 -0400
@@ -663,6 +663,7 @@ int load_crashdump_segments(struct kexec
 	int nr_ranges, align = 1024;
 	long int nr_cpus = 0;
 	struct memory_range *mem_range, *memmap_p;
+	int i;
 
 	if (get_crash_memory_ranges(&mem_range, &nr_ranges) < 0)
 		return -1;
@@ -720,8 +721,13 @@ int load_crashdump_segments(struct kexec
 	 * elf core header segment to 16K to avoid being placed in such gaps.
 	 * This is a makeshift solution until it is fixed in kernel.
 	 */
-	elfcorehdr = add_buffer(info, tmp, sz, 16*1024, align, min_base,
-							max_addr, -1);
+	for (i=0;i<KEXEC_MAX_SEGMENTS;i++) {
+		if ((memmap_p[i].start == 0) &&
+		    (memmap_p[i].end == 0))
+			break;
+	}
+	elfcorehdr = add_buffer(info, tmp, sz, 16*1024, align, min_base, 
+				memmap_p[i-1].end, -1);
 	dfprintf(stdout, "Created elf header segment at 0x%lx\n", elfcorehdr);
 	if (delete_memmap(memmap_p, elfcorehdr, sz) < 0)
 		return -1;
--- kexec-tools-1.101/kexec/kexec.c.orig	2007-07-17 08:34:00.000000000 -0400
+++ kexec-tools-1.101/kexec/kexec.c	2007-07-17 08:34:13.000000000 -0400
@@ -327,6 +327,7 @@ unsigned long add_buffer(struct kexec_in
 	unsigned long base;
 	int result;
 	int pagesize;
+	int i;
 
 	result = sort_segments(info);
 	if (result < 0) {
@@ -336,11 +337,22 @@ unsigned long add_buffer(struct kexec_in
 	/* Round memsz up to a multiple of pagesize */
 	pagesize = getpagesize();
 	memsz = (memsz + (pagesize - 1)) & ~(pagesize - 1);
-
+retry:
 	base = locate_hole(info, memsz, buf_align, buf_min, buf_max, buf_end);
 	if (base == ULONG_MAX) {
 		die("locate_hole failed\n");
 	}
+
+	for (i = 0; i < info->nr_segments; i++) {
+		if ((base < (info->segment[i].mem + info->segment[i].memsz)) &&
+			((base+memsz) > info->segment[i].mem)) {
+			/*
+			 *we have an overlap, bump down buf_max
+			 */
+			buf_max = (unsigned long)info->segment[i].mem;
+			goto retry;
+		}
+	}
 	
 	add_segment(info, buf, bufsz, base, memsz);
 	return base;


Index: kexec-tools.spec
===================================================================
RCS file: /cvs/extras/rpms/kexec-tools/F-7/kexec-tools.spec,v
retrieving revision 1.85
retrieving revision 1.86
diff -u -r1.85 -r1.86
--- kexec-tools.spec	18 Jun 2007 19:24:01 -0000	1.85
+++ kexec-tools.spec	1 Aug 2007 18:27:13 -0000	1.86
@@ -1,6 +1,6 @@
 Name: kexec-tools
 Version: 1.101
-Release: 70%{?dist}
+Release: 71%{?dist}
 License: GPL
 Group: Applications/System
 Summary: The kexec/kdump userspace component.
@@ -13,11 +13,11 @@
 Source6: kdump.sysconfig.ia64
 Source7: mkdumprd
 Source8: kdump.conf
-Source9: makedumpfile-1.1.1.tar.gz
+Source9: makedumpfile-1.1.5.tar.gz
 Source10: kexec-kdump-howto.txt
 Source11: firstboot_kdump.py
 Source12: mkdumprd.8
-Source13: pofiles.tar.gz
+Source13: kexec-tools-po.tar.gz
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 Requires(pre): coreutils chkconfig sed 
 Requires: busybox >= 1.2.0
@@ -88,6 +88,7 @@
 Patch604: kexec-tools-1.101-elf-format.patch
 Patch605: kexec-tools-1.101-ifdown.patch
 Patch606: kexec-tools-1.101-reloc-update.patch
+Patch607: kexec-tools-1.101-x86-add_buffer_retry.patch
 
 %description
 kexec-tools provides /sbin/kexec binary that facilitates a new
@@ -138,6 +139,7 @@
 %patch604 -p1
 %patch605 -p1
 %patch606 -p1
+%patch607 -p1
 
 tar -z -x -v -f %{SOURCE13}
 
@@ -158,12 +160,11 @@
 %ifarch %{ix86} x86_64 ia64 ppc64 ppc
 make -C makedumpfile
 %endif
-make -C po
+make -C kexec-tools-po
 
 %install
 rm -rf $RPM_BUILD_ROOT
 make install %{?archdef} DESTDIR=$RPM_BUILD_ROOT
-make -C po install DESTDIR=$RPM_BUILD_ROOT
 mkdir -p -m755 $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d
 mkdir -p -m755 $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig
 mkdir -p -m755 $RPM_BUILD_ROOT%{_localstatedir}/crash
@@ -185,8 +186,8 @@
 install -m 755 makedumpfile/makedumpfile $RPM_BUILD_ROOT/sbin/makedumpfile
 install -m 755 makedumpfile/makedumpfile-R.pl $RPM_BUILD_ROOT/sbin/makedumpfile-reasm
 %endif
-CHOMP_SIZE=`echo $RPM_BUILD_ROOT | wc -c`
-find $RPM_BUILD_ROOT -name '*.mo' | cut -b $CHOMP_SIZE- >> %{name}.lang
+make -C kexec-tools-po install DESTDIR=$RPM_BUILD_ROOT
+%find_lang %{name}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -251,8 +252,18 @@
 %doc kexec-kdump-howto.txt
 
 %changelog
+* Wed Aug 01 2007 Neil Horman <nhorman at redhat.com> - 1.101-71%{dist}
+- Updating F-7 kexec-tools to fedora-testing version with following:
+- Update mkdumprd to suppres notifications /rev makedumpfile (bz 250341)
+- Fix mkdumprd to suppress informative messages (bz 248797)
+- Updated fr.po translations (bz 248287)
+- Fix up add_buff to retry locate_hole on segment overlap (bz 247989)
+- Fix up language files for kexec (bz 246508)
+- Fixing up initscript for LSB (bz 246967)
+- Fixed conflict in mkdumprd in use of /mnt (bz 222911)
+
 * Mon Jun 18 2007 Neil Horman <nhorman at redhat.com> - 1.101-70%{dist}
-- Fixed kdump.init to read /proc/cmdline properly (bz 244649)
+- Fixed kdump.init to properly read cmdline (bz 244649)
 
 * Wed Apr 11 2007 Neil Horman <nhorman at redhat.com> - 1.101-69%{dist}
 - Fixed up kdump.init to enforce mode 600 on authorized_keys2 (bz 235986)


Index: mkdumprd
===================================================================
RCS file: /cvs/extras/rpms/kexec-tools/F-7/mkdumprd,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- mkdumprd	15 Mar 2007 17:36:03 -0000	1.13
+++ mkdumprd	1 Aug 2007 18:27:13 -0000	1.14
@@ -888,7 +888,7 @@
         core_collector)
             if [ -x /sbin/makedumpfile ]; then
                 CORE_COLLECTOR=$location
-                CORE_COLLECTOR=`echo $CORE_COLLECTOR | sed -e's/makedumpfile/makedumpfile -i \/etc\/makedumpfile.config/'`
+                CORE_COLLECTOR=`echo $CORE_COLLECTOR | sed -e's/makedumpfile/makedumpfile -i \/etc\/makedumpfile.config --message-level 1/'`
             else
                 echo "Cannot use the core_collector option on this arch"
                 rm -rf $MNTIMAGE
@@ -971,7 +971,8 @@
         rm -rf $IMAGE
         exit 1
     fi
-    /sbin/makedumpfile -g $MNTIMAGE/etc/makedumpfile.config -x /usr/lib/debug/lib/modules/$RUN_KERN_VER/vmlinux > /dev/null
+    /sbin/makedumpfile -g $MNTIMAGE/etc/makedumpfile.config -x
+/usr/lib/debug/lib/modules/$RUN_KERN_VER/vmlinux > /dev/null 2>&1
     if [ $? != 0 ]; then
         echo "could not generate makedumpfile configuration.  aborting"
         rm -rf $MNTIMAGE
@@ -1635,11 +1636,12 @@
                 *)
                     #test filesystem and directory creation
                     kdump_chk "test -f /sbin/fsck.$type" "Unsupported type $type"
-                    kdump_chk "mount -t $type $location /mnt" "Bad mount point $location"
-                    mkdir -p /mnt/$SAVE_PATH
-                    tdir=`mktemp -dqp /mnt/$SAVE_PATH`
+                    tmnt=`mktemp -dq`
+                    kdump_chk "mount -t $type $location $tmnt" "Bad mount point $location"
+                    mkdir -p $tmnt/$SAVE_PATH
+                    tdir=`mktemp -dqp $tmnt/$SAVE_PATH`
                     available_size=$(df $tdir | tail -1 | tr -s ' ' ':' | cut -d: -f4)
-                    rc=$? && rm -rf $tdir && umount /mnt
+                    rc=$? && rm -rf $tdir && umount $tmnt
                     if [ $rc != "0" ]; then 
                         echo "Cannot create directory in $location: $SAVE_PATH"
                         exit 1


Index: sources
===================================================================
RCS file: /cvs/extras/rpms/kexec-tools/F-7/sources,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- sources	6 Mar 2007 21:09:57 -0000	1.5
+++ sources	1 Aug 2007 18:27:13 -0000	1.6
@@ -1,2 +1,3 @@
 b4f7ffcc294d41a6a4c40d6e44b7734d  kexec-tools-1.101.tar.gz
-41c919e362e7fb0e0fbe2b6d9be0de91  makedumpfile-1.1.1.tar.gz
+68f68403304c5c89c7087b07563911f8  kexec-tools-po.tar.gz
+dbf062772132ccb43d47920df89a3cf9  makedumpfile-1.1.5.tar.gz




More information about the fedora-extras-commits mailing list