Re: [PATCH] x86: only put e820 ram entries in resource tree

From: Eric W. Biederman
Date: Sun Aug 24 2008 - 23:04:23 EST


Yinghai Lu <yhlu.kernel@xxxxxxxxx> writes:

> may need user to have new kexec tools that could create e820 table
> from /sys/firmware/memmap instead of /proc/iomem for second kernel

Nacked-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>

/proc/iomem is mostly about io resources which you have just removed.
It is totally the wrong thing to only register RAM resource!

The use by kexec was and is just taking advantage of something that
already existed.

Eric

> Signed-off-by: Yinghai Lu <yhlu.kernel@xxxxxxxxx>
> Cc: Bernhard Walle <bwalle@xxxxxxx>
> Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
> Cc: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
>
> Index: linux-2.6/arch/x86/kernel/e820.c
> ===================================================================
> --- linux-2.6.orig/arch/x86/kernel/e820.c
> +++ linux-2.6/arch/x86/kernel/e820.c
> @@ -1279,6 +1279,10 @@ void __init e820_reserve_resources(void)
>
> res = alloc_bootmem_low(sizeof(struct resource) * e820.nr_map);
> for (i = 0; i < e820.nr_map; i++) {
> + if (e820.map[i].type != E820_RAM) {
> + res++;
> + continue;
> + }
> end = e820.map[i].addr + e820.map[i].size - 1;
> #ifndef CONFIG_RESOURCES_64BIT
> if (end > 0x100000000ULL) {
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/