Message ID | 20211124024600.18509-1-atrajeev@linux.vnet.ibm.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | powerpc/perf: Fix task context setting for trace imc | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/github-powerpc_ppctests | success | Successfully ran 8 jobs. |
snowpatch_ozlabs/github-powerpc_selftests | success | Successfully ran 8 jobs. |
snowpatch_ozlabs/github-powerpc_sparse | success | Successfully ran 4 jobs. |
snowpatch_ozlabs/github-powerpc_clang | success | Successfully ran 7 jobs. |
snowpatch_ozlabs/github-powerpc_kernel_qemu | success | Successfully ran 24 jobs. |
Athira Rajeev <atrajeev@linux.vnet.ibm.com> writes: > Trace IMC (In-Memory collection counters) in powerpc is > useful for application level profiling. For trace_imc, > presently task context (task_ctx_nr) is set to > perf_hw_context. But perf_hw_context is to be used for > cpu PMU. So for trace_imc, even though it is per thread > PMU, it is preferred to use sw_context inorder to be able > to do application level monitoring. Hence change the > task_ctx_nr to use perf_sw_context. It's not a software event though, so this is not obviously correct. Can you explain more why this is OK, I guess perf_sw_context is misnamed these days? And can you add a comment in the code explaining why this hardware PMU is using perf_sw_context. cheers > Fixes: 012ae244845f ("powerpc/perf: Trace imc PMU functions") > Signed-off-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com> > Reviewed-by: Madhavan Srinivasan <maddy@linux.vnet.ibm.com> > --- > arch/powerpc/perf/imc-pmu.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/powerpc/perf/imc-pmu.c b/arch/powerpc/perf/imc-pmu.c > index e106909ff9c3..f3b3262bdf02 100644 > --- a/arch/powerpc/perf/imc-pmu.c > +++ b/arch/powerpc/perf/imc-pmu.c > @@ -1457,7 +1457,7 @@ static int trace_imc_event_init(struct perf_event *event) > > event->hw.idx = -1; > > - event->pmu->task_ctx_nr = perf_hw_context; > + event->pmu->task_ctx_nr = perf_sw_context; > event->destroy = reset_global_refc; > return 0; > } > -- > 2.33.0
diff --git a/arch/powerpc/perf/imc-pmu.c b/arch/powerpc/perf/imc-pmu.c index e106909ff9c3..f3b3262bdf02 100644 --- a/arch/powerpc/perf/imc-pmu.c +++ b/arch/powerpc/perf/imc-pmu.c @@ -1457,7 +1457,7 @@ static int trace_imc_event_init(struct perf_event *event) event->hw.idx = -1; - event->pmu->task_ctx_nr = perf_hw_context; + event->pmu->task_ctx_nr = perf_sw_context; event->destroy = reset_global_refc; return 0; }