Re: [PATCH 4/8] x86 boot: allow overlapping ebda and efi memmap memory ranges

From: Yinghai Lu
Date: Mon Jun 16 2008 - 13:41:32 EST


On Mon, Jun 16, 2008 at 10:37 AM, Paul Jackson <pj@xxxxxxx> wrote:
> hpa, replying to pj:
>> >> Would you recommend doing this with code in arch/x86/kernel/head.c,
>> >> that did not invoke reserve_ebda_region() if efi_enabled was set?
>>
>> I disagree with it
>
> Ok - that's clear.
>
> So it would seem that I am getting conflicting advice.
>
> One person recommends code that only makes this safety reservation of
> the ebda region in the non-EFI case:
>
> if (!efi_enabled)
> reserve_ebda_region();
>
> and the other recommends code that always makes this safety reservation,
> and that handles the possible resulting overlap with the EFI memmap:
>
> if (!range_in_ebda_area(pmap, pmap + memmap.nr_map * memmap.desc_size))
> reserve_early(pmap, pmap + memmap.nr_map * memmap.desc_size,
> "EFI memmap");
>
> (The above code should be adjusted in light of Yinghai's suggestion
> that it handle partial overlap.)
>
> The resolution of this conflict might be easy, however.
>
> I will readily accept that there exist some 'classic' PCs for which
> we need to reserve a 'safe' ebda area.
>
> The question to me is this. Are there PCs which (1) need such a safety
> reservation of an ebda area -and- (2) boot with EFI enabled? I am not
> asking if there -could- be (in the abstract, there certainly is no law
> of government or physics prohibiting such). Rather I am asking as a
> practical matter if there is, or is likely to be, such PCs "in the wild."

like to see to make
reserve_ebda_region() more smart like the old way when andi introduced
ebda_size...
instead of reserve 0x9000 to 0x100000 all the way.

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