From: Yinghai Lu <yinghai@kernel.org>
To: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Ingo Molnar <mingo@elte.hu>, "H. Peter Anvin" <hpa@zytor.com>,
the arch/x86 maintainers <x86@kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Subject: Re: brk patches..
Date: Sun, 01 Mar 2009 17:02:41 -0800 [thread overview]
Message-ID: <49AB3031.4020500@kernel.org> (raw)
In-Reply-To: <49AB1FE6.8030300@goop.org>
Jeremy Fitzhardinge wrote:
> Yinghai Lu wrote:
>>> But its no different from what i386 does now to allocate its initial
>>> pagetables. How does this not break now?
>>>
>>>
>>
>> it will try to use initial page table af first, and it is not big
>> enough, it will according to e820 and other reserved_early areas to
>> find good positions.
>>
>
> head_32.S has no such logic. It just starts building the kernel
> mappings directly after _end, starting at pg0, and uses as much space as
> it needs. For a !PSE CPU with a large kernel, that can be quite a lot
> of space. Only later, when its creating the linear memory mappings,
> does it search around in the e820 tables (which it now has access to)
> for space.
yes, we should have some way to only make initial_pgtable only cover to _end
and put that initial_pagbe before _end.
>
> The whole point of the brk segment was to have a way of allocating some
> memory very early, before e820 is even available. If you really think
> this is dangerous, then we can easily extend the bss in the linker
> script to include the brk memory, and release any leftover when we do
> the normal bootmem freeup. That would also give us a well-defined upper
> limit on how much brk memory can be allocated; its a bit undefined at
> the moment, as it depends on how much slop there is after the kernel
> mapping.
hope later boot loader could check vmlinux size in bzImage (according uncompressed size)
and find good position in RAM for bzImage.
we should find good position for brk with find_e820_area().
YH
next prev parent reply other threads:[~2009-03-02 1:03 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-28 1:51 [PATCH] Simple brk allocator for very early allocations Jeremy Fitzhardinge
2009-02-28 1:51 ` [PATCH] x86: add brk allocation for very, " Jeremy Fitzhardinge
2009-02-28 1:51 ` [PATCH] x86: reserve brk earlier Jeremy Fitzhardinge
2009-02-28 1:51 ` [PATCH] x86-32: use brk segment for allocating initial kernel pagetable Jeremy Fitzhardinge
2009-02-28 7:02 ` Yinghai Lu
2009-02-28 7:05 ` J Jeremy Fitzhardinge
2009-02-28 7:15 ` J Ingo Molnar
2009-02-28 7:39 ` does boot loader check uncompressed kernel size? Yinghai Lu
2009-02-28 7:47 ` Cyrill Gorcunov
2009-02-28 7:54 ` Yinghai Lu
2009-02-28 8:08 ` H. Peter Anvin
2009-02-28 20:42 ` Yinghai Lu
2009-02-28 7:52 ` brk patches Yinghai Lu
2009-02-28 8:08 ` H. Peter Anvin
2009-02-28 8:17 ` Jeremy Fitzhardinge
2009-02-28 20:40 ` Yinghai Lu
2009-03-01 23:53 ` Jeremy Fitzhardinge
2009-03-02 1:02 ` Yinghai Lu [this message]
2009-03-02 1:07 ` H. Peter Anvin
2009-03-02 1:16 ` Jeremy Fitzhardinge
2009-03-02 1:36 ` H. Peter Anvin
2009-03-02 1:54 ` Jeremy Fitzhardinge
2009-03-02 2:12 ` Yinghai Lu
2009-03-01 1:23 ` [PATCH] x86: put initial_pg_tables into bss Yinghai Lu
2009-03-01 8:31 ` [PATCH] x86: put initial_pg_tables into bss -v2 Yinghai Lu
2009-03-01 9:20 ` H. Peter Anvin
2009-03-01 17:49 ` Yinghai Lu
2009-03-01 18:06 ` Yinghai Lu
2009-03-01 23:29 ` H. Peter Anvin
2009-03-02 0:55 ` Yinghai Lu
2009-03-09 8:15 ` [PATCH] x86: put initial_pg_tables into .bss -v4 Yinghai Lu
2009-03-09 15:41 ` H. Peter Anvin
2009-03-09 17:35 ` Yinghai Lu
2009-03-09 18:28 ` H. Peter Anvin
2009-03-11 1:39 ` Jeremy Fitzhardinge
2009-03-09 7:45 ` [PATCH] x86: put initial_pg_tables into bss -v2 Yinghai Lu
2009-02-28 8:07 ` does boot loader check uncompressed kernel size? H. Peter Anvin
2009-02-28 8:17 ` J Jeremy Fitzhardinge
2009-02-28 7:30 ` J Yinghai Lu
2009-02-28 1:51 ` [PATCH] x86: use brk allocation for DMI Jeremy Fitzhardinge
2009-02-28 1:51 ` [PATCH] x86: leave _brk_end defined Jeremy Fitzhardinge
2009-02-28 5:23 ` [PATCH] Simple brk allocator for very early allocations Andrew Morton
2009-02-28 6:30 ` Jeremy Fitzhardinge
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=49AB3031.4020500@kernel.org \
--to=yinghai@kernel.org \
--cc=hpa@zytor.com \
--cc=jeremy.fitzhardinge@citrix.com \
--cc=jeremy@goop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox