Determine version of kernel that produced vmcore

Bernhard Walle bwalle at suse.de
Mon Jul 16 07:57:07 EDT 2007


* Vivek Goyal <vgoyal at in.ibm.com> [2007-07-16 06:19]:
> On Fri, Jul 13, 2007 at 03:15:50PM +0200, Bernhard Walle wrote:
> > * Ken'ichi Ohmichi <oomichi at mxs.nes.nec.co.jp> [2007-07-13 13:05]:
> > > 
> > > BTW, I'd like to remove PAGESIZE from a mkdfinfo file.
> > > While 2nd-kernel is running, new makedumpfile comes to consider
> > > 2nd-kernel PAGESIZE as 1st-kernel PAGESIZE without getting PAGESIZE
> > > from a mkdfinfo file.
> > 
> > I don't think that's a good idea. IMO the kernel should be modified to
> > export the page size in a variable for that purpose. That would solve
> > all problems and dependencies, doesn't it?
> > 
> 
> Agreed. We need to export PAGESIZE from kernel instead of assuming that
> second kernel as got same page size as first kernel.

So what about this? Do you think it has a chance to get included?
Should the variable not be inside mm/ but otherwhere?


Signed-off-by: Bernhard Walle <bwalle at suse.de>

---
 mm/mmap.c |   10 ++++++++++
 1 file changed, 10 insertions(+)

--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -35,6 +35,16 @@
 #define arch_mmap_check(addr, len, flags)	(0)
 #endif
 
+#ifdef CONFIG_KEXEC
+
+/*
+ * Although that variable is not needed for the kernel, initialise it here
+ * to have the page size available in the vmlinux binary.
+ */
+int page_size = PAGE_SIZE;
+
+#endif
+
 static void unmap_region(struct mm_struct *mm,
 		struct vm_area_struct *vma, struct vm_area_struct *prev,
 		unsigned long start, unsigned long end);



More information about the kexec mailing list