From: Andi Kleen <andi@firstfloor.org>
To: balbir@linux.vnet.ibm.com
Cc: Nick Piggin <nickpiggin@yahoo.com.au>,
akpm@osdl.org, torvalds@osdl.org, linux-kernel@vger.kernel.org,
linux-mm@kvack.org
Subject: Re: [PATCH] Document huge memory/cache overhead of memory controller in Kconfig
Date: Fri, 22 Feb 2008 10:51:13 +0100 [thread overview]
Message-ID: <47BE9B11.7090809@firstfloor.org> (raw)
In-Reply-To: <47BE527D.2070109@linux.vnet.ibm.com>
Balbir Singh wrote:
> Andi Kleen wrote:
>>> 1. We could create something similar to mem_map, we would need to handle 4
>> 4? At least x86 mainline only has two ways now. flatmem and vmemmap.
>>
>>> different ways of creating mem_map.
>> Well it would be only a single way to create the "aux memory controller
>> map" (or however it will be called). Basically just a call to single
>> function from a few different places.
>>
>>> 2. On x86 with 64 GB ram,
>> First i386 with 64GB just doesn't work, at least not with default 3:1
>> split. Just calculate it yourself how much of the lowmem area is left
>> after the 64GB mem_map is allocated. Typical rule of thumb is that 16GB
>> is the realistic limit for 32bit x86 kernels. Worrying about
>> anything more does not make much sense.
>>
>
> I understand what you say Andi, but nothing in the kernel stops us from
> supporting 64GB.
Well in practice it just won't work at least at default page offset.
> Should a framework like memory controller make an assumption
> that not more than 16GB will be configured on an x86 box?
It doesn't need to. Just increase __VMALLOC_RESERVE by the
respective amount (end_pfn * sizeof(unsigned long))
Then 64GB still won't work in practice, but at least you made no such
assumption in theory @)
Also there is the issue of memory hotplug. In theory later
memory hotplugs could fill up vmalloc. Luckily x86 BIOS
are supposed to declare how much they plan to hot add memory later
using the SRAT memory hotplug area (in fact the old non sparsemem
hotadd implementation even relied on that). It would
be possible to adjust __VMALLOC_RESERVE at boot even for that. I suspect
this issue could be also just ignored at first; it is unlikely
to be serious.
>>> if we decided to use vmalloc space, we would need 64
>>> MB of vmalloc'ed memory
>> Yes and if you increase mem_map you need exactly the same space
>> in lowmem too. So increasing the vmalloc reservation for this is
>> equivalent. Just make sure you use highmem backed vmalloc.
>>
>
> I see two problems with using vmalloc. One, the reservation needs to be done
> across architectures.
Only on 32bit. Ok hacking it into all 32bit architectures might be
difficult, but I assume it would be ok to rely on the architecture
maintainers for that and only enable it on some selected architectures
using Kconfig for now.
On 64bit vmalloc should be by default large enough so it could
be enabled for all 64bit architectures.
>Two, a big vmalloc chunk is not node aware,
vmalloc_node()
-Andi
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2008-02-22 9:51 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-20 12:23 [PATCH] Document huge memory/cache overhead of memory controller in Kconfig Andi Kleen
2008-02-20 12:52 ` Balbir Singh
2008-02-20 15:00 ` John Stoffel
2008-02-20 15:20 ` Balbir Singh
2008-02-20 15:49 ` Jan Engelhardt
2008-02-20 16:10 ` John Stoffel
2008-02-20 16:15 ` Balbir Singh
2008-02-20 17:00 ` Andi Kleen
2008-02-21 6:49 ` KAMEZAWA Hiroyuki
2008-02-21 6:52 ` Balbir Singh
2008-02-20 18:19 ` Pavel Machek
2008-02-20 18:28 ` Jan Engelhardt
2008-02-20 18:51 ` Pavel Machek
2008-02-21 14:46 ` KOSAKI Motohiro
2008-02-21 14:52 ` Balbir Singh
2008-02-21 23:55 ` Pavel Machek
2008-02-22 3:09 ` KOSAKI Motohiro
2008-02-20 16:15 ` John Stoffel
2008-02-20 16:54 ` Ray Lee
2008-02-20 16:57 ` Andi Kleen
2008-02-21 4:35 ` Nick Piggin
2008-02-21 5:06 ` Balbir Singh
[not found] ` <200802211622.51751.nickpiggin@yahoo.com.au>
2008-02-21 5:46 ` Balbir Singh
2008-02-21 10:44 ` Andi Kleen
2008-02-22 4:41 ` Balbir Singh
2008-02-22 9:51 ` Andi Kleen [this message]
2008-02-22 12:14 ` Balbir Singh
2008-02-22 13:00 ` Andi Kleen
2008-02-22 15:47 ` Balbir Singh
2008-02-21 10:37 ` Andi Kleen
2008-02-21 11:03 ` Balbir Singh
2008-02-22 6:59 ` KAMEZAWA Hiroyuki
2008-02-22 7:06 ` Balbir Singh
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=47BE9B11.7090809@firstfloor.org \
--to=andi@firstfloor.org \
--cc=akpm@osdl.org \
--cc=balbir@linux.vnet.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=nickpiggin@yahoo.com.au \
--cc=torvalds@osdl.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;
as well as URLs for NNTP newsgroup(s).