Re: [PATCH] x86_64: early memtest to find bad ram

From: Ingo Molnar
Date: Fri Mar 21 2008 - 08:03:46 EST



* Yinghai Lu <yhlu.kernel.send@xxxxxxxxx> wrote:

> do simple memtest after init_memory_mapping
>
> use find_e820_area_size to find all ram range that is not reserved.
>
> and do some simple bits test to find some bad ram.
>
> if find some bad ram, use reserve_early to exclude that range.

very nice patch! I always thought that this was the proper way to do
memtest - and we could in fact also do something like this after SMP
bringup, and hit the memory bus via multiple CPUs. [that will need a
different enumeration though than e820 maps]

one structural observation: please make this unified functionality, so
that 32-bit kernels can make use of it too.

a small style nit from scripts/checkpatch.pl:

> +// printk(KERN_DEBUG "find_e820_area_size : e820 %d [%llx, %lx]\n", i, ei->addr, ei_last);

remove such lines or make them pr_debug(). (checkpatch also found more
such cases)

also, please add a CONFIG_BOOTPARAM_MEMTEST=y option so that
distributions can enable this by default in their debug kernels.

i've applied your current version to get some testing, please send delta
patches against x86/latest.

Ingo
--
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/