linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: William Lee Irwin III <wli@holomorphy.com>
To: linux-kernel@vger.kernel.org
Subject: Re: percpu-2.5.63-bk5-1 (properly generated)
Date: Sun, 2 Mar 2003 05:15:06 -0800	[thread overview]
Message-ID: <20030302131506.GI1195@holomorphy.com> (raw)
In-Reply-To: <20030302110747.GR24172@holomorphy.com>

On Sun, Mar 02, 2003 at 03:07:47AM -0800, William Lee Irwin III wrote:
> This patch does 3 different things:
> (1) shoves per-cpu areas into node-local memory
> (2) creates a new per-node thing analogous to per-cpu
> (3) uses (1) and (2) to shove several frequently-accessed things into
>         node-local memory
> Tested, boots, and runs on NUMA-Q. Trims 6s of 41s off kernel compiles.
> Compiletested for walmart x86 SMP/UP, and could use runtime testing.
> A few non-x86 arches probably need fixups for per_cpu irq_stat[].
> Also available at:
> ftp://ftp.kernel.org/pub/linux/kernel/people/wli/percpu/

Okay, I got requests for a more detailed changelog, so here it is:
This patch does 19 different things when put under the microscope
and/or in an excessively finegrained subdivision of simple concepts.

(1) reuse the arch/i386/discontigmem.c per-node mem_map[] virtual remap
	to remap node-local memory backing per_cpu and per_node areas
(2)  make irq_stat[] per_cpu, x86-only
(3)  make mmu_gathers[] per_cpu, with comcomitant divorce from asm-generic
(4)  delay discontig zone_sizes_init() to dodge bootstrap order issues
(5)  add .data.pernode section handling in vmlinux.lds.S
(6)  per_cpu()/__get_cpu_var() needs to parenthesize the cpu arg
(7)  introduced asm-generic/pernode.h to do similar things as percpu.h
(8)  added MAX_NODE_CPUS for pessimistic sizing of virtual remapping arenas
(9)  fix return type error in NUMA-Q get_zholes_size()
(10) #undef asm-i386/per{cpu,node}.h's __GENERIC_PER_{CPU,NODE}
(11) declare setup_per_cpu_areas() in asm-i386/percpu.h
(12) make an asm-i386/pernode.h stub header like include/asm-generic/pernode.h
(13) declare MAX_NODE_CPUS in include/asm-i386/srat.h
(14) make zone_table[] per_node
(15) call setup_per_node_areas() in init/main.c, with analogous hooks
(16) make task_cache per_cpu
(17) make runqueues[] per_cpu
(18) make node_nr_running[] per_node
(19) make reap_timers[] per_cpu

-- wli

  reply	other threads:[~2003-03-02 13:04 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-02 11:07 percpu-2.5.63-bk5-1 (properly generated) William Lee Irwin III
2003-03-02 13:15 ` William Lee Irwin III [this message]
2003-03-02 18:24 Martin J. Bligh
2003-03-02 20:24 ` William Lee Irwin III
2003-03-02 20:46   ` Martin J. Bligh
2003-03-02 21:06     ` William Lee Irwin III
2003-03-02 21:58       ` Martin J. Bligh
2003-03-02 22:10         ` William Lee Irwin III
2003-03-02 23:13           ` Martin J. Bligh
2003-03-02 23:42             ` William Lee Irwin III
2003-03-03  0:07               ` Martin J. Bligh
2003-03-03  1:43                 ` William Lee Irwin III
2003-03-03 17:40                   ` Martin J. Bligh
2003-03-03 22:51                     ` William Lee Irwin III
2003-03-03 23:30                       ` Martin J. Bligh
2003-03-04  0:14                         ` William Lee Irwin III

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=20030302131506.GI1195@holomorphy.com \
    --to=wli@holomorphy.com \
    --cc=linux-kernel@vger.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;
as well as URLs for NNTP newsgroup(s).