[patch] x86, bts: DS and BTS initialization - Kernel

This is a discussion on [patch] x86, bts: DS and BTS initialization - Kernel ; Move BTS initialisation out of an #ifdef CONFIG_X86_64 guard. Assume core2 BTS and DS layout for future models of family 6 processors. Signed-off-by: Markus Metzger --- Index: gits/arch/x86/kernel/ds.c ================================================== ================= --- gits.orig/arch/x86/kernel/ds.c 2008-11-09 10:55:13.000000000 -0100 +++ gits/arch/x86/kernel/ds.c 2008-11-09 12:40:56.000000000 -0100 ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: [patch] x86, bts: DS and BTS initialization

  1. [patch] x86, bts: DS and BTS initialization

    Move BTS initialisation out of an #ifdef CONFIG_X86_64 guard.

    Assume core2 BTS and DS layout for future models of family 6 processors.

    Signed-off-by: Markus Metzger
    ---

    Index: gits/arch/x86/kernel/ds.c
    ================================================== =================
    --- gits.orig/arch/x86/kernel/ds.c 2008-11-09 10:55:13.000000000 -0100
    +++ gits/arch/x86/kernel/ds.c 2008-11-09 12:40:56.000000000 -0100
    @@ -821,17 +821,16 @@
    switch (c->x86) {
    case 0x6:
    switch (c->x86_model) {
    + case 0 ... 0xC:
    + /* sorry, don't know about them */
    + break;
    case 0xD:
    case 0xE: /* Pentium M */
    ds_configure(&ds_cfg_var);
    break;
    - case 0xF: /* Core2 */
    - case 0x1C: /* Atom */
    + default: /* Core2, Atom, ... */
    ds_configure(&ds_cfg_64);
    break;
    - default:
    - /* sorry, don't know about them */
    - break;
    }
    break;
    case 0xF:
    Index: gits/arch/x86/kernel/ptrace.c
    ================================================== =================
    --- gits.orig/arch/x86/kernel/ptrace.c 2008-11-09 10:55:15.000000000
    -0100
    +++ gits/arch/x86/kernel/ptrace.c 2008-11-09 12:40:57.000000000 -0100
    @@ -929,17 +929,16 @@
    switch (c->x86) {
    case 0x6:
    switch (c->x86_model) {
    + case 0 ... 0xC:
    + /* sorry, don't know about them */
    + break;
    case 0xD:
    case 0xE: /* Pentium M */
    bts_configure(&bts_cfg_pentium_m);
    break;
    - case 0xF: /* Core2 */
    - case 0x1C: /* Atom */
    + default: /* Core2, Atom, ... */
    bts_configure(&bts_cfg_core2);
    break;
    - default:
    - /* sorry, don't know about them */
    - break;
    }
    break;
    case 0xF:
    Index: gits/arch/x86/kernel/cpu/intel.c
    ================================================== =================
    --- gits.orig/arch/x86/kernel/cpu/intel.c 2008-11-09 10:54:04.000000000
    -0100
    +++ gits/arch/x86/kernel/cpu/intel.c 2008-11-09 12:41:59.000000000 -0100
    @@ -307,12 +307,11 @@
    set_cpu_cap(c, X86_FEATURE_P4);
    if (c->x86 == 6)
    set_cpu_cap(c, X86_FEATURE_P3);
    +#endif

    if (cpu_has_bts)
    ptrace_bts_init_intel(c);

    -#endif
    -
    detect_extended_topology(c);
    if (!cpu_has(c, X86_FEATURE_XTOPOLOGY)) {
    /*


    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  2. Re: [patch] x86, bts: DS and BTS initialization


    * Markus Metzger wrote:

    > Move BTS initialisation out of an #ifdef CONFIG_X86_64 guard.
    >
    > Assume core2 BTS and DS layout for future models of family 6 processors.
    >
    > Signed-off-by: Markus Metzger
    > ---
    >
    > Index: gits/arch/x86/kernel/ds.c


    applied the commit below to tip/x86/ptrace, thanks Markus!

    Ingo

    --------------->
    From f4166c54bfe04f64603974058e44fbd7cfef0ccc Mon Sep 17 00:00:00 2001
    From: Markus Metzger
    Date: Sun, 9 Nov 2008 14:29:21 +0100
    Subject: [PATCH] x86, bts: DS and BTS initialization

    Impact: widen BTS/PEBS ptrace enablement to more CPU models

    Move BTS initialisation out of an #ifdef CONFIG_X86_64 guard.

    Assume core2 BTS and DS layout for future models of family 6 processors.

    Signed-off-by: Markus Metzger
    Signed-off-by: Ingo Molnar
    ---
    arch/x86/kernel/cpu/intel.c | 3 +--
    arch/x86/kernel/ds.c | 9 ++++-----
    arch/x86/kernel/ptrace.c | 9 ++++-----
    3 files changed, 9 insertions(+), 12 deletions(-)

    diff --git a/arch/x86/kernel/cpu/intel.c b/arch/x86/kernel/cpu/intel.c
    index cce0b61..816f27f 100644
    --- a/arch/x86/kernel/cpu/intel.c
    +++ b/arch/x86/kernel/cpu/intel.c
    @@ -307,12 +307,11 @@ static void __cpuinit init_intel(struct cpuinfo_x86 *c)
    set_cpu_cap(c, X86_FEATURE_P4);
    if (c->x86 == 6)
    set_cpu_cap(c, X86_FEATURE_P3);
    +#endif

    if (cpu_has_bts)
    ptrace_bts_init_intel(c);

    -#endif
    -
    detect_extended_topology(c);
    if (!cpu_has(c, X86_FEATURE_XTOPOLOGY)) {
    /*
    diff --git a/arch/x86/kernel/ds.c b/arch/x86/kernel/ds.c
    index 2b69994..c570252 100644
    --- a/arch/x86/kernel/ds.c
    +++ b/arch/x86/kernel/ds.c
    @@ -821,17 +821,16 @@ void __cpuinit ds_init_intel(struct cpuinfo_x86 *c)
    switch (c->x86) {
    case 0x6:
    switch (c->x86_model) {
    + case 0 ... 0xC:
    + /* sorry, don't know about them */
    + break;
    case 0xD:
    case 0xE: /* Pentium M */
    ds_configure(&ds_cfg_var);
    break;
    - case 0xF: /* Core2 */
    - case 0x1C: /* Atom */
    + default: /* Core2, Atom, ... */
    ds_configure(&ds_cfg_64);
    break;
    - default:
    - /* sorry, don't know about them */
    - break;
    }
    break;
    case 0xF:
    diff --git a/arch/x86/kernel/ptrace.c b/arch/x86/kernel/ptrace.c
    index 0a6d8c1..06180df 100644
    --- a/arch/x86/kernel/ptrace.c
    +++ b/arch/x86/kernel/ptrace.c
    @@ -929,17 +929,16 @@ void __cpuinit ptrace_bts_init_intel(struct cpuinfo_x86 *c)
    switch (c->x86) {
    case 0x6:
    switch (c->x86_model) {
    + case 0 ... 0xC:
    + /* sorry, don't know about them */
    + break;
    case 0xD:
    case 0xE: /* Pentium M */
    bts_configure(&bts_cfg_pentium_m);
    break;
    - case 0xF: /* Core2 */
    - case 0x1C: /* Atom */
    + default: /* Core2, Atom, ... */
    bts_configure(&bts_cfg_core2);
    break;
    - default:
    - /* sorry, don't know about them */
    - break;
    }
    break;
    case 0xF:
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

+ Reply to Thread