Re: [PATCH]: MIPS: oprofile: Distinguish R14000 from R12000

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, May 25, 2015 at 12:15:21AM -0400, Joshua Kinard wrote:

> From: Joshua Kinard <kumba@xxxxxxxxxx>
> 
> Currently, arch/mips/oprofile/op_model_mipsxx.c treats an R14000 as an
> R12000.  This patch distinguishes one from the other.
> 
> Signed-off-by: Joshua Kinard <kumba@xxxxxxxxxx>
> ---
>  op_model_mipsxx.c |    5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> linux-mips-oprofile-fix-r14k.patch
> diff --git a/arch/mips/oprofile/op_model_mipsxx.c b/arch/mips/oprofile/op_model_mipsxx.c
> index 6a6e2cc..75f1967 100644
> --- a/arch/mips/oprofile/op_model_mipsxx.c
> +++ b/arch/mips/oprofile/op_model_mipsxx.c
> @@ -408,10 +408,13 @@ static int __init mipsxx_init(void)
>  		break;
>  
>  	case CPU_R12000:
> -	case CPU_R14000:
>  		op_model_mipsxx_ops.cpu_type = "mips/r12000";
>  		break;
>  
> +	case CPU_R14000:
> +		op_model_mipsxx_ops.cpu_type = "mips/r14000";
> +		break;
> +

Note the string returned here is exported to userland which uses it
to lookup event and unit_mask definitions in /usr/share/oprofile.
In other words without changes to userland oprofile you've just broken
R14000 oprofile support.

Due to the large number of such files it is only acceptable to add new
such files for CPUs that differ significantly from other CPUs.  This
is not the case for the R14000 which supports the same events as the
R12000, so this patch is wrong, sorry.

I don't want to think about what the mixing R10000 and R12000/R14000
in a single system means for using oprofile ...

  Ralf





[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux