Messages in this thread Patch in this message | | | Date | Thu, 7 May 2009 09:24:10 GMT | From | tip-bot for Markus Metzger <> | Subject | [tip:tracing/core] x86, ds: use single debug store cpu configuration |
| |
Commit-ID: ee811517a5604aa63fae803b7c044712699e1303 Gitweb: http://git.kernel.org/tip/ee811517a5604aa63fae803b7c044712699e1303 Author: Markus Metzger <markus.t.metzger@intel.com> AuthorDate: Fri, 3 Apr 2009 16:43:47 +0200 Committer: Ingo Molnar <mingo@elte.hu> CommitDate: Tue, 7 Apr 2009 13:36:29 +0200
x86, ds: use single debug store cpu configuration
Use a single configuration for all cpus.
Reported-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Markus Metzger <markus.t.metzger@intel.com> Cc: roland@redhat.com Cc: eranian@googlemail.com Cc: oleg@redhat.com Cc: juan.villacis@intel.com Cc: ak@linux.jf.intel.com LKML-Reference: <20090403144602.191165000@intel.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
--- arch/x86/kernel/ds.c | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/arch/x86/kernel/ds.c b/arch/x86/kernel/ds.c index 71cab3b..443f415 100644 --- a/arch/x86/kernel/ds.c +++ b/arch/x86/kernel/ds.c @@ -47,9 +47,8 @@ struct ds_configuration { /* Control bit-masks indexed by enum ds_feature: */ unsigned long ctl[dsf_ctl_max]; }; -static DEFINE_PER_CPU(struct ds_configuration, ds_cfg_array); +static struct ds_configuration ds_cfg __read_mostly; -#define ds_cfg per_cpu(ds_cfg_array, smp_processor_id()) /* Maximal size of a DS configuration: */ #define MAX_SIZEOF_DS (12 * 8) @@ -1268,6 +1267,10 @@ ds_configure(const struct ds_configuration *cfg, void __cpuinit ds_init_intel(struct cpuinfo_x86 *c) { + /* Only configure the first cpu. Others are identical. */ + if (ds_cfg.name) + return; + switch (c->x86) { case 0x6: switch (c->x86_model) {
| |