[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-ia64-devel] [PATCH 4/5] kexec: fix /proc/iomem_machine



On Thu, Jul 24, 2008 at 07:55:48PM +1000, Simon Horman wrote:

> I think that saved_max_pfn isn't entirely related to the problem that
> you are seeing. On Linux it is used in the second kernel after
> crash dump to deterimin the size of /proc/vmcore - that is to make
> it match the physical memory rather than the limited memory that
> the crash dump kernel runs in.
> 
> As a crash dump kernel currently can't be a dom0 (or domU) kernel,
> I don't think that it is that important in the context of linux-xen.
> We could probably even eliminate it, but it seems better to leave it
> rather than add diferences to upstram linux.
> 
> Also, while looking into your change I came across
> f4a570997e71b892805a1e71303d09c327af135f in upstream Linux.
> Again, it isn't needed in our code as our tree won't run
> as a crash dump kernel. But it might be good to align the code
> with what is in upstram Linux.
> 
> Lastly, your change is already present in upstram Linux,
> I'm not sure how I managed to miss adding it to xen-Linux.
> Sorry about that :-(

So I backported 
f4a570997e71b892805a1e71303d09c327af135f and
e55fdf11f3029bcd41b1b9547ad9db12c27eea76.

And here is the updated patch.

[IA64] initialize /proc/iomem_machine properly when discontig mem.

With CONFIG_DISCONTIGMEM enabled /proc/iomem_machine isn't
initialized properly so that kexec failes because kexec-tools wrongly
tries to use ia64 boot mem (or efi memmap area).
This patch fixes /proc/iomem_machine.

Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx>

diff -r 75235538851a arch/ia64/mm/discontig.c
--- a/arch/ia64/mm/discontig.c  Thu Jul 24 14:31:08 2008 +0900
+++ b/arch/ia64/mm/discontig.c  Fri Jul 25 12:36:21 2008 +0900
@@ -21,6 +21,9 @@
 #include <linux/acpi.h>
 #include <linux/efi.h>
 #include <linux/nodemask.h>
+#if defined(CONFIG_XEN) && defined(CONFIG_KEXEC)
+#include <linux/kexec.h>
+#endif
 #include <asm/pgalloc.h>
 #include <asm/tlb.h>
 #include <asm/meminit.h>
@@ -502,6 +505,9 @@
        reserve_pernode_space();
        memory_less_nodes();
        initialize_pernode_data();
+#if defined(CONFIG_XEN) && defined(CONFIG_KEXEC)
+       xen_machine_kexec_setup_resources();
+#endif
 
        max_pfn = max_low_pfn;
 


-- 
yamahata

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.