Messages in this thread | | | From | Ian Rogers <> | Date | Tue, 15 Nov 2022 09:07:44 -0800 | Subject | Re: [PATCH] perf/amd/ibs: Make IBS a core pmu |
| |
On Tue, Nov 15, 2022 at 1:39 AM Ravi Bangoria <ravi.bangoria@amd.com> wrote: > > So far, only one pmu was allowed to be registered as core pmu and thus > IBS pmus were being registered as uncore. However, with the event context > rewrite, that limitation no longer exists and thus IBS pmus can also be > registered as core pmu. This makes IBS much more usable, for ex, user > will be able to do per-process precise monitoring on AMD: > > Before patch: > $ sudo perf record -e cycles:pp ls > Error: > Invalid event (cycles:pp) in per-thread mode, enable system wide with '-a' > > After patch: > $ sudo perf record -e cycles:pp ls > [ perf record: Woken up 1 times to write data ] > [ perf record: Captured and wrote 0.017 MB perf.data (33 samples) ] > > Signed-off-by: Ravi Bangoria <ravi.bangoria@amd.com>
Acked-by: Ian Rogers <irogers@google.com>
This is awesome! Ian
> --- > Note: > This patch is dependent on the event context rewrite patch which is > already present in a tip tree: > https://git.kernel.org/tip/tip/c/bd27568117664 > > arch/x86/events/amd/ibs.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/x86/events/amd/ibs.c b/arch/x86/events/amd/ibs.c > index 3271735f0070..fbc2ce86f4b8 100644 > --- a/arch/x86/events/amd/ibs.c > +++ b/arch/x86/events/amd/ibs.c > @@ -631,7 +631,7 @@ static const struct attribute_group *op_attr_update[] = { > > static struct perf_ibs perf_ibs_fetch = { > .pmu = { > - .task_ctx_nr = perf_invalid_context, > + .task_ctx_nr = perf_hw_context, > > .event_init = perf_ibs_init, > .add = perf_ibs_add, > @@ -655,7 +655,7 @@ static struct perf_ibs perf_ibs_fetch = { > > static struct perf_ibs perf_ibs_op = { > .pmu = { > - .task_ctx_nr = perf_invalid_context, > + .task_ctx_nr = perf_hw_context, > > .event_init = perf_ibs_init, > .add = perf_ibs_add, > -- > 2.37.3 >
| |