[tip:tracing/core] x86, ds: use single debug store cpu configuration

From: tip-bot for Markus Metzger
Date: Thu May 07 2009 - 05:28:56 EST


Commit-ID: ee811517a5604aa63fae803b7c044712699e1303
Gitweb: http://git.kernel.org/tip/ee811517a5604aa63fae803b7c044712699e1303
Author: Markus Metzger <markus.t.metzger@xxxxxxxxx>
AuthorDate: Fri, 3 Apr 2009 16:43:47 +0200
Committer: Ingo Molnar <mingo@xxxxxxx>
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@xxxxxxx>
Signed-off-by: Markus Metzger <markus.t.metzger@xxxxxxxxx>
Cc: roland@xxxxxxxxxx
Cc: eranian@xxxxxxxxxxxxxx
Cc: oleg@xxxxxxxxxx
Cc: juan.villacis@xxxxxxxxx
Cc: ak@xxxxxxxxxxxxxxxxxx
LKML-Reference: <20090403144602.191165000@xxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>


---
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) {
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/