[Patch] get the backup area dynamically

Simon Horman horms at verge.net.au
Wed Mar 2 17:16:58 EST 2011


On Wed, Mar 02, 2011 at 11:44:21AM -0500, Vivek Goyal wrote:
> On Thu, Mar 03, 2011 at 12:10:43AM +0800, Amerigo Wang wrote:
> > Currently we hard-coded the first 640K area as backup area,
> > however, this is not correct on some system which has reserved
> > memory area in the first 640K:
> > 
> > BIOS-e820: 0000000000010000 - 0000000000097000 (usable)
> > BIOS-e820: 0000000000097000 - 00000000000a0000 (reserved)
> > 
> > on such system we still mark all the first 640K as usable
> > in capture kernel, this will cause kernel panic.
> 
> We recently had an issue where the BIOS area which was marked as reserved
> in first kernel, and second kernel tried to use it and led to panic. The
> believe is that kernel shouldn't have used that area as it is BIOS
> reserved.
> 
> So we need to move away from hardcoded first 640K and instead try to
> determine that area dynamically. In more generic form, which should
> have the capability to have multiple backup areas or multiple ranges
> in single backup area. But I think as a first step, having single
> backup area is fine. 
> 
> If we run into issues where BIOS split first 640K into multiple small
> "usable" pieces, then we shall have to go for more generic form.
> 
> So this approach sounds reasonable to me.
> 
> Acked-by: Vivek Goyal <vgoyal at redhat.com>

Thanks, applied.



More information about the kexec mailing list