From: Kevin Winchester <kjwinchester@gmail.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Kevin Winchester <kjwinchester@gmail.com>,
"H. Peter Anvin" <hpa@zytor.com>,
Thomas Gleixner <tglx@linutronix.de>,
Borislav Petkov <bp@alien8.de>,
Randy Dunlap <rdunlap@xenotime.net>,
Nick Bowler <nbowler@elliptictech.com>,
linux-kernel@vger.kernel.org
Subject: [PATCH 0/5] x86: Cleanup and simplify cpu-specific data
Date: Mon, 20 Feb 2012 22:06:01 -0400 [thread overview]
Message-ID: <1329789966-693-1-git-send-email-kjwinchester@gmail.com> (raw)
In-Reply-To: <20120217115627.GA25601@elte.hu>
Various per-cpu fields are define in arch/x86/kernel/smpboot.c that are
basically equivalent to the cpu-specific data in struct cpuinfo_x86.
By moving these fields into the structure, a number of codepaths can be
simplified since they no longer need to care about those fields not
existing on !SMP builds.
The size effects on allno (UP) and allyes (MAX_SMP) kernels are as
follows:
text data bss dec hex filename
1586721 304864 506208 2397793 249661 vmlinux.allno
1588517 304928 505920 2399365 249c85 vmlinux.allno.after
84706053 13212311 42434560 140352924 85d9d9c vmlinux.allyes
84705333 13213799 42434560 140353692 85da09c vmlinux.allyes.afte
As can be seen, the kernels get slighly larger, but the code reduction/
simplification should be enough to compensate for it.
Kevin Winchester (5):
x86: Move per cpu cpu_llc_shared_map to a field in struct cpuinfo_x86
x86: Move per cpu cpu_llc_id to a field in struct cpuinfo_x86
x86: Move per cpu cpu_sibling_map to a field in struct cpuinfo_x86
x86: Move per cpu cpu_core_map to a field in struct cpuinfo_x86
x86: Remove #ifdef CONFIG_SMP sections by moving smp_num_siblings
into common.c
arch/x86/include/asm/perf_event_p4.h | 9 +--
arch/x86/include/asm/processor.h | 7 +++
arch/x86/include/asm/smp.h | 26 +---------
arch/x86/include/asm/topology.h | 10 ++--
arch/x86/kernel/apic/apic_numachip.c | 2 +-
arch/x86/kernel/cpu/amd.c | 18 ++-----
arch/x86/kernel/cpu/common.c | 7 ++-
arch/x86/kernel/cpu/intel_cacheinfo.c | 19 ++-----
arch/x86/kernel/cpu/mcheck/mce_amd.c | 7 ++-
arch/x86/kernel/cpu/proc.c | 8 +--
arch/x86/kernel/cpu/topology.c | 2 -
arch/x86/kernel/process.c | 3 +-
arch/x86/kernel/smpboot.c | 95 +++++++++++++--------------------
arch/x86/oprofile/nmi_int.c | 6 --
arch/x86/oprofile/op_model_p4.c | 11 +----
arch/x86/xen/smp.c | 6 --
drivers/cpufreq/acpi-cpufreq.c | 2 +-
drivers/cpufreq/p4-clockmod.c | 4 +-
drivers/cpufreq/powernow-k8.c | 13 +----
drivers/cpufreq/speedstep-ich.c | 6 +-
drivers/hwmon/coretemp.c | 6 +--
21 files changed, 86 insertions(+), 181 deletions(-)
--
1.7.9
next prev parent reply other threads:[~2012-02-21 2:06 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-02 19:10 [PATCH] MCE, AMD: Select SMP explicitly Borislav Petkov
2012-02-02 19:37 ` Nick Bowler
2012-02-02 20:24 ` Borislav Petkov
2012-02-03 19:18 ` MCE, AMD: Hide smp-only code around CONFIG_SMP Borislav Petkov
2012-02-03 22:05 ` Randy Dunlap
2012-02-07 9:57 ` Ingo Molnar
2012-02-08 0:41 ` Kevin Winchester
2012-02-08 10:19 ` Borislav Petkov
2012-02-08 12:22 ` Kevin Winchester
2012-02-08 13:05 ` Borislav Petkov
2012-02-09 8:06 ` Ingo Molnar
2012-02-10 0:00 ` Kevin Winchester
2012-02-11 14:07 ` Ingo Molnar
2012-02-12 0:24 ` [PATCH] x86: Move per cpu cpu_llc_shared_map to a field in struct cpuinfo_x86 Kevin Winchester
2012-02-12 2:18 ` Kevin Winchester
2012-02-12 11:19 ` Ingo Molnar
2012-02-14 0:12 ` [PATCH v2] " Kevin Winchester
2012-02-17 11:56 ` Ingo Molnar
2012-02-17 13:12 ` Kevin Winchester
2012-02-21 2:06 ` Kevin Winchester [this message]
2012-02-21 2:06 ` [PATCH 1/5] " Kevin Winchester
2012-02-21 15:42 ` Borislav Petkov
2012-02-21 2:06 ` [PATCH 2/5] x86: Move per cpu cpu_llc_id " Kevin Winchester
2012-02-21 10:37 ` Borislav Petkov
2012-02-21 10:40 ` Borislav Petkov
2012-02-21 2:06 ` [PATCH 3/5] x86: Move per cpu cpu_sibling_map " Kevin Winchester
2012-02-21 11:35 ` Borislav Petkov
2012-02-21 2:06 ` [PATCH 4/5] x86: Move per cpu cpu_core_map " Kevin Winchester
2012-02-21 14:21 ` Borislav Petkov
2012-02-21 2:06 ` [PATCH 5/5] x86: Remove #ifdef CONFIG_SMP sections by moving smp_num_siblings into common.c Kevin Winchester
2012-02-21 15:39 ` Borislav Petkov
2012-02-22 1:44 ` Kevin Winchester
2012-02-22 1:45 ` [PATCH v2 0/5] x86: Cleanup and simplify cpu-specific data Kevin Winchester
2012-02-22 1:45 ` [PATCH v2 1/5] x86: Move per cpu cpu_llc_shared_map to a field in struct cpuinfo_x86 Kevin Winchester
2012-02-22 6:39 ` H. Peter Anvin
2012-02-22 9:27 ` Ingo Molnar
2012-02-22 12:24 ` Kevin Winchester
2012-02-22 23:32 ` [PATCH v3 0/5] x86: Cleanup and simplify cpu-specific data Kevin Winchester
2012-02-22 23:32 ` [PATCH v3 1/5] x86: Move per cpu cpu_llc_shared_map to a field in struct cpuinfo_x86 Kevin Winchester
2012-02-22 23:32 ` [PATCH v3 2/5] x86: Move per cpu cpu_llc_id " Kevin Winchester
2012-02-22 23:32 ` [PATCH v3 3/5] x86: Move per cpu cpu_sibling_map " Kevin Winchester
2012-02-22 23:32 ` [PATCH v3 4/5] x86: Move per cpu cpu_core_map " Kevin Winchester
2012-02-22 23:32 ` [PATCH v3 5/5] x86: Remove #ifdef CONFIG_SMP sections by moving smp_num_siblings into common.c Kevin Winchester
2012-02-22 23:43 ` [PATCH v3 0/5] x86: Cleanup and simplify cpu-specific data Kevin Winchester
2012-02-23 7:32 ` Ingo Molnar
2012-02-22 1:45 ` [PATCH v2 2/5] x86: Move per cpu cpu_llc_id to a field in struct cpuinfo_x86 Kevin Winchester
2012-02-22 1:45 ` [PATCH v2 3/5] x86: Move per cpu cpu_sibling_map " Kevin Winchester
2012-02-22 1:45 ` [PATCH v2 4/5] x86: Move per cpu cpu_core_map " Kevin Winchester
2012-02-22 1:45 ` [PATCH v2 5/5] x86: Remove #ifdef CONFIG_SMP sections by moving smp_num_siblings into common.c Kevin Winchester
2012-02-12 11:23 ` [PATCH] x86: Move per cpu cpu_llc_shared_map to a field in struct cpuinfo_x86 Borislav Petkov
2012-02-12 0:31 ` MCE, AMD: Hide smp-only code around CONFIG_SMP Kevin Winchester
2012-02-22 16:13 ` [tip:x86/urgent] x86/mce/AMD: Fix UP build error tip-bot for Borislav Petkov
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=1329789966-693-1-git-send-email-kjwinchester@gmail.com \
--to=kjwinchester@gmail.com \
--cc=bp@alien8.de \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=nbowler@elliptictech.com \
--cc=rdunlap@xenotime.net \
--cc=tglx@linutronix.de \
/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).