From: Scott Lurndal <scott.lurndal@3leafsystems.com>
To: Christoph Lameter <cl@linux-foundation.org>
Cc: Ingo Molnar <mingo@elte.hu>,
Andrew Morton <akpm@linux-foundation.org>,
tj@kernel.org, linux-kernel@vger.kernel.org, x86@kernel.org,
linux-arch@vger.kernel.org, andi@firstfloor.org, hpa@zytor.com,
tglx@linutronix.de
Subject: Re: [PATCHSET] percpu: generalize first chunk allocators and improve lpage NUMA support
Date: Tue, 30 Jun 2009 13:21:53 -0700 [thread overview]
Message-ID: <20090630202153.GB28043@pendragon.3leafnetworks.com> (raw)
In-Reply-To: <alpine.DEB.1.10.0906301533400.29795@gentwo.org>
On Tue, Jun 30, 2009 at 03:39:52PM -0400, Christoph Lameter wrote:
> On Tue, 30 Jun 2009, Ingo Molnar wrote:
>
> > Yeah, it's a bug for something like a virtual environment which
> > boots generic kernels that might have 64 possible CPUs (on a true
> > 64-way system), but which will have fewer in practice.
>
> A machine (and a virtual environment) can indicate via the BIOS tables or
> ACPI that there are less "possible" cpus. That is actually very common.
>
> The difference between actual and possible cpus only has to be the number
> of processors that could be brought up later. In a regular system that is
> pretty much zero. In a fancy system with actual hotpluggable cpus there
> would be a difference but usually the number of hotpluggable cpus is
> minimal.
A hypervisor running on a 4-socket Beckton platform will have 32
(without hyperthreading) or 64 (with hyperthreading) CPUs to
allocate 1Q2010. A hypervisor supporting ACPI hot-plug would be able
then to hot-plug from one to 64 cores into a single linux guest if it
wanted to (and didn't overcommit, so gang-scheduling wasn't required).
Such a hypervisor might typically pass the maximum number of
CPUs in via the guest ACPI tables when the guest boots, to provide
the maximum flexibility in being able to grow and shrink the guest,
with only a subset marked as initially present.
I've been working recently with a 128 (shanghai) / 192 (istanbul)
core shared memory system which supports hot plugging CPUs into Linux,
and the feature would be less useful if a hot-plug event could fail
because the per-cpu area couldn't be allocated at the time of the
event (which argues for pre-allocation, if a large physically contiguous
region is required).
That said, I don't see much use for 32-bit kernels in environments with
such CPU counts.
scott
next prev parent reply other threads:[~2009-06-30 20:37 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-24 13:30 Tejun Heo
2009-06-24 13:30 ` [PATCH 01/10] x86: make pcpu_chunk_addr_search() matching stricter Tejun Heo
2009-06-24 13:30 ` [PATCH 02/10] percpu: drop @unit_size from embed first chunk allocator Tejun Heo
2009-06-24 13:30 ` [PATCH 03/10] x86,percpu: generalize 4k " Tejun Heo
2009-06-24 13:30 ` [PATCH 04/10] percpu: make 4k first chunk allocator map memory Tejun Heo
2009-06-24 13:30 ` [PATCH 05/10] x86,percpu: generalize lpage first chunk allocator Tejun Heo
2009-06-24 13:30 ` [PATCH 06/10] percpu: simplify pcpu_setup_first_chunk() Tejun Heo
2009-06-24 13:30 ` [PATCH 07/10] percpu: reorder a few functions in mm/percpu.c Tejun Heo
2009-06-24 13:30 ` [PATCH 08/10] percpu: drop pcpu_chunk->page[] Tejun Heo
2009-06-24 13:30 ` [PATCH 09/10] percpu: allow non-linear / sparse cpu -> unit mapping Tejun Heo
2009-06-24 13:30 ` [PATCH 10/10] percpu: teach large page allocator about NUMA Tejun Heo
2009-06-24 23:55 ` [PATCHSET] percpu: generalize first chunk allocators and improve lpage NUMA support Andrew Morton
2009-06-25 0:02 ` Andi Kleen
2009-06-25 0:13 ` H. Peter Anvin
2009-06-25 9:19 ` Andi Kleen
2009-06-25 14:18 ` H. Peter Anvin
2009-06-25 19:54 ` Andi Kleen
2009-06-25 20:15 ` H. Peter Anvin
2009-06-25 20:26 ` Andi Kleen
2009-06-26 0:40 ` Tejun Heo
2009-06-26 2:02 ` H. Peter Anvin
2009-06-26 6:54 ` Andi Kleen
2009-06-25 2:35 ` Tejun Heo
2009-06-25 9:20 ` Ingo Molnar
2009-06-29 23:20 ` Christoph Lameter
2009-06-29 23:39 ` Andrew Morton
2009-06-30 14:24 ` Christoph Lameter
2009-06-30 19:15 ` Ingo Molnar
2009-06-30 19:39 ` Christoph Lameter
2009-06-30 20:21 ` Scott Lurndal [this message]
2009-06-30 21:31 ` Ingo Molnar
2009-06-30 22:16 ` Christoph Lameter
2009-06-30 22:31 ` Ingo Molnar
2009-06-30 22:40 ` Andi Kleen
2009-07-01 0:48 ` Tejun Heo
2009-06-30 22:55 ` Christoph Lameter
2009-06-30 23:07 ` Ingo Molnar
2009-06-30 23:18 ` Christoph Lameter
2009-06-30 23:30 ` Ingo Molnar
2009-07-01 6:34 ` Andi Kleen
2009-06-30 23:20 ` Tejun Heo
2009-06-30 23:31 ` Ingo Molnar
2009-06-30 23:34 ` H. Peter Anvin
2009-07-01 6:42 ` Andi Kleen
2009-07-01 10:21 ` Tejun Heo
2009-07-01 12:23 ` Andi Kleen
2009-07-01 12:53 ` Tejun Heo
2009-07-01 13:11 ` Andi Kleen
2009-07-01 17:33 ` Christoph Lameter
2009-07-01 22:42 ` Tejun Heo
2009-07-03 23:14 ` Tejun Heo
2009-07-13 10:12 ` [PATCH 04/10] percpu: make 4k first chunk allocator map memory David Howells
2009-07-15 3:17 ` Tejun Heo
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=20090630202153.GB28043@pendragon.3leafnetworks.com \
--to=scott.lurndal@3leafsystems.com \
--cc=akpm@linux-foundation.org \
--cc=andi@firstfloor.org \
--cc=cl@linux-foundation.org \
--cc=hpa@zytor.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=tglx@linutronix.de \
--cc=tj@kernel.org \
--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
all inboxes | Powered by JetHome®