From: Ingo Molnar <mingo@elte.hu>
To: Mike Travis <travis@sgi.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Thomas Gleixner <tglx@linutronix.de>,
"H. Peter Anvin" <hpa@zytor.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 00/11] x86: cleanup early per cpu variables/accesses v5-folded
Date: Mon, 28 Apr 2008 15:42:53 +0200 [thread overview]
Message-ID: <20080428134253.GD3973@elte.hu> (raw)
In-Reply-To: <20080426001548.829332000@polaris-admin.engr.sgi.com>
* Mike Travis <travis@sgi.com> wrote:
> 1/11: Increase the limit of NR_CPUS to 4096 and introduce a boolean
> called "MAXSMP" which when set (e.g. "allyesconfig"), will set
> NR_CPUS = 4096 and NODES_SHIFT = 9 (512). Changed max setting
> for NODES_SHIFT from 15 to 9 to accurately reflect the real limit.
>
> 2/11: Introduce a new PER_CPU macro called "EARLY_PER_CPU". This is
> used by some per_cpu variables that are initialized and accessed
> before there are per_cpu areas allocated.
>
> Add a flag "arch_provides_topology_pointers" that indicates pointers
> to topology cpumask_t maps are available. Otherwise, use the function
> returning the cpumask_t value. This is useful if cpumask_t set size
> is very large to avoid copying data on to/off of the stack.
>
> 3/11: Restore the nodenumber field in the x86_64 pda. This field is slightly
> different than the x86_cpu_to_node_map mainly because it's a static
> indication of which node the cpu is on while the cpu to node map is a
> dyanamic mapping that may get reset if the cpu goes offline. This also
> simplifies the numa_node_id() macro.
>
> 4/11: Consolidate node_to_cpumask operations and remove the 256k
> byte node_to_cpumask_map. This is done by allocating the
> node_to_cpumask_map array after the number of possible
> nodes (nr_node_ids) is known.
>
> 5/11: Replace usages of MAX_NUMNODES with nr_node_ids in kernel/sched.c,
> where appropriate. This saves some allocated space as well as many
> wasted cycles going through node entries that are non-existent.
>
> 6/11: Changed some global definitions in drivers/base/cpu.c to static.
>
> 7/11: Remove 544k bytes from the kernel by removing the boot_cpu_pda
> array from the data section and allocating it during startup.
>
> 8/11: Increase performance for systems with large count NR_CPUS by
> limiting the range of the cpumask operators that loop over
> the bits in a cpumask_t variable. This removes a large amount
> of wasted cpu cycles.
>
> 9/11: Change references from for_each_cpu_mask to for_each_cpu_mask_ptr
> in all cases for x86_64 and generic code.
>
> 10/11: Change references from next_cpu to next_cpu_nr (or for_each_cpu_mask_ptr
> if applicable), in all cases for x86_64 and generic code.
>
> 11/11: Pass reference to cpumask variable in net/sunrpc/svc.c
thanks Travis, applied.
Ingo
next prev parent reply other threads:[~2008-04-28 13:43 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-26 0:15 [PATCH 00/11] x86: cleanup early per cpu variables/accesses v5-folded Mike Travis
2008-04-26 0:15 ` [PATCH 01/11] x86: Modify Kconfig to allow up to 4096 cpus Mike Travis
2008-04-27 10:39 ` Pavel Machek
2008-04-28 13:38 ` Ingo Molnar
2008-04-28 13:54 ` Pavel Machek
2008-04-28 15:52 ` Ingo Molnar
2008-04-28 17:13 ` H. Peter Anvin
2008-04-26 0:15 ` [PATCH 02/11] x86: cleanup early per cpu variables/accesses v4 Mike Travis
2008-04-26 0:15 ` [PATCH 03/11] x86: restore pda nodenumber field Mike Travis
2008-04-26 0:15 ` [PATCH 04/11] x86: remove the static 256k node_to_cpumask_map Mike Travis
2008-04-26 0:15 ` [PATCH 05/11] sched: replace MAX_NUMNODES with nr_node_ids in kernel/sched.c Mike Travis
2008-04-26 0:15 ` [PATCH 06/11] cpu: change some globals to statics in drivers/base/cpu.c v2 Mike Travis
2008-04-26 0:15 ` [PATCH 07/11] x86: remove static boot_cpu_pda array Mike Travis
2008-04-26 0:15 ` [PATCH 08/11] x86: Add performance variants of cpumask operators Mike Travis
2008-04-26 0:15 ` [PATCH 09/11] x86: Use performance variant for_each_cpu_mask_nr Mike Travis
2008-04-26 0:15 ` [PATCH 10/11] x86: Use performance variant next_cpu_nr Mike Travis
2008-04-26 0:15 ` [PATCH 11/11] net: Pass reference to cpumask variable in net/sunrpc/svc.c Mike Travis
2008-04-28 13:42 ` Ingo Molnar [this message]
2008-04-28 15:13 ` [PATCH 00/11] x86: cleanup early per cpu variables/accesses v5-folded Ingo Molnar
2008-04-28 16:27 ` Mike Travis
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=20080428134253.GD3973@elte.hu \
--to=mingo@elte.hu \
--cc=akpm@linux-foundation.org \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=travis@sgi.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.