[PATCH 2/3] [kexec-tools] Pass vmcoreinfo's address and size

tachibana at mxm.nes.nec.co.jp tachibana at mxm.nes.nec.co.jp
Thu Oct 18 05:14:07 EDT 2007


Hi Simon,

On Thu, 18 Oct 2007 14:37:41 +0900, Simon Horman <horms at verge.net.au> wrote:
> On Wed, Oct 17, 2007 at 02:16:19PM +0900, Ken'ichi Ohmichi wrote:
> > 
> > Hi Simon,
> > 
> > Simon Horman wrote:
> > > On Wed, Aug 22, 2007 at 09:13:39PM +0900, Ken'ichi Ohmichi wrote:
> > >> [2/3] [kexec-tools] Pass vmcoreinfo's address and size
> > >> The patch is for kexec-tools-testing-20070330.
> > >> (http://www.kernel.org/pub/linux/kernel/people/horms/kexec-tools/)
> > >> kexec command gets the address and size of the vmcoreinfo data from
> > >> /sys/kernel/vmcoreinfo, and passes them to the second kernel through
> > >> ELF header of /proc/vmcore. When the second kernel is booting, the
> > >> kernel gets them from the ELF header and creates vmcoreinfo's PT_NOTE
> > >> segment into /proc/vmcore.
> > > 
> > > Sorry for the long delay, I completely missed this patch.
> > > 
> > > The kexec-tools change seems ok to me. What is the status of
> > > the kernel portion of the change?
> > 
> > The kernel portion is merged into linux-2.6.23-mm1.
> > According to Andrew's mail "-mm merge plans for 2.6.24",  its status is
> > "The infamous misc.  Will re-review and will merge basically all of them".
> > 
> > http://www.ussg.iu.edu/hypermail/linux/kernel/0710.0/0313.html
> > 
> > 
> > > Do you still want the kexec-tools portion applied?
> > 
> > Yes, I hope so.
> 
> Thanks, applied :-)

Thank you for applying ;-)

But it has the compatibility problem that the kexec command fails on
kernels which don't have /sys/kernel/vmcoreinfo:

 # ls /sys/kernel/
 debug  kexec_crash_loaded  kexec_loaded  security  uevent_helper 
 uevent_seqnum
 #
 (There is not /sys/kernel/vmcoreinfo.)

 #
 # kexec -p --args-linux vmlinuz --initrd=initrd.img
 Could not open "/sys/kernel/vmcoreinfo": No such file or directory
 #

To fix the problem, could you please apply the attached patch ?
The fixed part is the same as the patch in the following mail.

To: kexec-ml <kexec at lists.infradead.org>
Subject: [PATCH 2/2] [kexec-tools] Pass vmcoreinfo's address and size #2
From: "Ken'ichi Ohmichi" <oomichi at mxs.nes.nec.co.jp>
Date: Fri, 7 Sep 2007 18:10:02 +0900


Thanks
tachibana

---
diff -rpuN a/kexec/crashdump.c b/kexec/crashdump.c
--- a/kexec/crashdump.c	2007-10-18 15:20:56.000000000 +0900
+++ b/kexec/crashdump.c	2007-10-18 15:22:21.000000000 +0900
@@ -122,12 +122,8 @@ int get_kernel_vmcoreinfo(uint64_t *addr
 	*len = 0;
 
 	sprintf(kdump_info, "/sys/kernel/vmcoreinfo");
-	fp = fopen(kdump_info, "r");
-	if (!fp) {
-		die("Could not open \"%s\": %s\n", kdump_info,
-		    strerror(errno));
-		return -1;
-	}
+	if (!(fp = fopen(kdump_info, "r")))
+		return 0;
 
 	if (!fgets(line, sizeof(line), fp))
 		die("Cannot parse %s: %s\n", kdump_info, strerror(errno));
_




More information about the kexec mailing list