[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