[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1214818706.23677.8.camel@caritas-dev.intel.com>
Date: Mon, 30 Jun 2008 17:38:26 +0800
From: "Huang, Ying" <ying.huang@...el.com>
To: Yinghai Lu <yhlu.kernel@...il.com>
Cc: "H. Peter Anvin" <hpa@...or.com>, andi@...stfloor.org,
mingo@...hat.com, tglx@...utronix.de, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/2] x86 boot: add E820_RESVD_KERN
On Mon, 2008-06-30 at 02:15 -0700, Yinghai Lu wrote:
[...]
> >
> > I mean memory area reserved with reserved_early() or e820_update_range()
> > before reserve_setup_data() is called.
>
> before parse_setup_data, reserve_early is called for
> 1. kernel text/data/bss + initial pgt
> 2. ramdisk
> 3. ebda
> e820_update_range is not called.
> at this time early_res have RAM reserved by kernel.
>
> then setup_memory_map is called, so e820 have some ranges...directly
> from e820 table
>
> next need to call parse_setup_data
> it will add some entries in e820
>
> then reserve_setup_data is called, it will use e820_update_range to
> reserve setup_data itself directly in e820
>
> ...
Yes. There is no real conflict now. I think a better rule is:
- Reserve memory area (directly from BIOS or boot-loader, not from
find_e820_area) needed as early as possible.
- Don't touch reserved area until all possible reservation is made, that
is, before conflict check is done.
> >
> > And because there is no conflict check in e820_update_range(), what to
> > deal with potential conflict between setup_data and other memory area
> > regardless which one is reserved earlier?
>
> find_e820_area will make sure it only find ram from e820 and it is not
> conflict with early_res
For find_e820_area, this is safe enough. But what about conflict between
setup_data and ebda or ramdisk?
Best Regards,
Huang Ying
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists