lkml.org 
[lkml]   [2009]   [May]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 1/2] oprofile: introduce module_param oprofile.cpu_type
    Date
    This patch removes module_param oprofile.force_arch_perfmon and
    introduces oprofile.cpu_type=archperfmon instead. This new parameter
    can be reused for other models and architectures.

    Currently only archperfmon is supported.

    Cc: Andi Kleen <ak@linux.intel.com>
    Signed-off-by: Robert Richter <robert.richter@amd.com>
    ---
    Documentation/kernel-parameters.txt | 12 +++++++-----
    arch/x86/oprofile/nmi_int.c | 13 +++++++++++--
    2 files changed, 18 insertions(+), 7 deletions(-)
    diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
    index 9b9566b..6ce5f48 100644
    --- a/Documentation/kernel-parameters.txt
    +++ b/Documentation/kernel-parameters.txt
    @@ -1650,11 +1650,13 @@ and is between 256 and 4096 characters. It is defined in the file
    oprofile.timer= [HW]
    Use timer interrupt instead of performance counters

    - oprofile.force_arch_perfmon=1 [X86]
    - Force use of architectural perfmon instead of
    - the CPU specific event set.
    - This might be useful if you have older oprofile
    - userland or if you want common events over Intel CPUs.
    + oprofile.cpu_type= Force an oprofile cpu type
    + This might be useful if you have an older oprofile
    + userland or if you want common events.
    + Format: { archperfmon }
    + archperfmon: [X86] Force use of architectural
    + perfmon on Intel CPUs instead of the
    + CPU specific event set.

    osst= [HW,SCSI] SCSI Tape Driver
    Format: <buffer_size>,<write_threshold>
    diff --git a/arch/x86/oprofile/nmi_int.c b/arch/x86/oprofile/nmi_int.c
    index 3308147..3b285e6 100644
    --- a/arch/x86/oprofile/nmi_int.c
    +++ b/arch/x86/oprofile/nmi_int.c
    @@ -386,8 +386,17 @@ static int __init p4_init(char **cpu_type)
    return 0;
    }

    -int force_arch_perfmon;
    -module_param(force_arch_perfmon, int, 0);
    +static int force_arch_perfmon;
    +static int force_cpu_type(const char *str, struct kernel_param *kp)
    +{
    + if (!strcmp(str, "archperfmon")) {
    + force_arch_perfmon = 1;
    + printk(KERN_INFO "oprofile: forcing architectural perfmon\n");
    + }
    +
    + return 0;
    +}
    +module_param_call(cpu_type, force_cpu_type, NULL, NULL, 0);

    static int __init ppro_init(char **cpu_type)
    {
    --
    1.6.1.3



    \
     
     \ /
      Last update: 2009-05-06 14:51    [from the cache]
    ©2003-2014 Jasper Spaans. hosted at Digital Ocean