[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAP-5=fX2UfyCLwxDzvt=xy_2yA9-450x0gGVebrhzXwWH4-b7g@mail.gmail.com>
Date: Thu, 15 May 2025 11:20:10 -0700
From: Ian Rogers <irogers@...gle.com>
To: Arnaldo Carvalho de Melo <acme@...nel.org>
Cc: Weilin Wang <weilin.wang@...el.com>, Kan Liang <kan.liang@...ux.intel.com>,
Peter Zijlstra <peterz@...radead.org>, Ingo Molnar <mingo@...hat.com>,
Namhyung Kim <namhyung@...nel.org>, Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>, Jiri Olsa <jolsa@...nel.org>,
Adrian Hunter <adrian.hunter@...el.com>, Ravi Bangoria <ravi.bangoria@....com>,
linux-perf-users@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v1] perf pmu intel: Adjust cpumaks for sub-NUMA clusters
on graniterapids
On Thu, May 15, 2025 at 11:18 AM Arnaldo Carvalho de Melo
<acme@...nel.org> wrote:
>
> On Thu, May 15, 2025 at 10:02:44AM -0700, Ian Rogers wrote:
> > On Thu, May 15, 2025 at 9:16 AM Arnaldo Carvalho de Melo
> > <acme@...nel.org> wrote:
> > >
> > > On Thu, May 15, 2025 at 01:15:26PM -0300, Arnaldo Carvalho de Melo wrote:
> > > > On Wed, May 14, 2025 at 09:38:18PM -0700, Ian Rogers wrote:
> > > > > On graniterapids the cache home agent (CHA) and memory controller
> > > > > (IMC) PMUs all have their cpumask set to per-socket information. In
> > > > > order for per NUMA node aggregation to work correctly the PMUs cpumask
> > > > > needs to be set to CPUs for the relevant sub-NUMA grouping.
> > > >
> > > > I'm blindly applying it as I can't test these changes, and I think this
> > > > is bad.
> > >
> > > In the end the only review/action I could do was to turn:
> > >
> > > Subject: Re: [PATCH v1] perf pmu intel: Adjust cpumaks for sub-NUMA clusters
> > >
> > > Into:
> > >
> > > Subject: Re: [PATCH v1] perf pmu intel: Adjust cpumasks for sub-NUMA clusters
> > >
> > > :-(
> > >
> > > Besides the build tests, etc.
> >
> > It isn't the easiest to test. Let me add Weilin Wang on v3 as I think
> > she has a graniterapids and could hopefully provide a tested-by tag
> > :-)
>
> But, one more review action, will wait for v2:
>
> make_refcnt_check_O: cd . && make EXTRA_CFLAGS=-DREFCNT_CHECKING=1 FEATURES_DUMP=/home/acme/git/perf-tools-next/tools/perf/BUILD_TEST_FEATURE_DUMP -j32 O=/tmp/tmp.HAAu6nXJ16 DESTDIR=/tmp/tmp.NpycD5uTsi
> cd . && make EXTRA_CFLAGS=-DREFCNT_CHECKING=1 FEATURES_DUMP=/home/acme/git/perf-tools-next/tools/perf/BUILD_TEST_FEATURE_DUMP -j32 O=/tmp/tmp.HAAu6nXJ16 DESTDIR=/tmp/tmp.NpycD5uTsi
> BUILD: Doing 'make -j32' parallel build
> Warning: Kernel ABI header differences:
> diff -u tools/include/uapi/linux/bits.h include/uapi/linux/bits.h
> diff -u tools/include/linux/bits.h include/linux/bits.h
> diff -u tools/include/vdso/unaligned.h include/vdso/unaligned.h
> diff -u tools/arch/arm64/include/asm/cputype.h arch/arm64/include/asm/cputype.h
> diff -u tools/perf/trace/beauty/include/uapi/linux/vhost.h include/uapi/linux/vhost.h
> Makefile.config:968: No libllvm 13+ found, slower source file resolution, please install llvm-devel/llvm-dev
> Makefile.config:1147: No openjdk development package found, please install JDK package, e.g. openjdk-8-jdk, java-1.8.0-openjdk-devel
>
> GEN /tmp/tmp.HAAu6nXJ16/common-cmds.h
> <SNIP>
> CC /tmp/tmp.HAAu6nXJ16/arch/x86/util/pmu.o
> TEST /tmp/tmp.HAAu6nXJ16/pmu-events/empty-pmu-events.log
> GEN /tmp/tmp.HAAu6nXJ16/pmu-events/pmu-events.c
> CC /tmp/tmp.HAAu6nXJ16/arch/x86/tests/hybrid.o
> CC /tmp/tmp.HAAu6nXJ16/arch/x86/tests/intel-pt-test.o
> CC /tmp/tmp.HAAu6nXJ16/util/block-info.o
> CC /tmp/tmp.HAAu6nXJ16/util/block-range.o
> CC /tmp/tmp.HAAu6nXJ16/util/build-id.o
> CC /tmp/tmp.HAAu6nXJ16/tests/pmu.o
> MKDIR /tmp/tmp.HAAu6nXJ16/ui/browsers/
> CC /tmp/tmp.HAAu6nXJ16/ui/browsers/annotate-data.o
> CC /tmp/tmp.HAAu6nXJ16/bench/futex-wake.o
> CC /tmp/tmp.HAAu6nXJ16/arch/x86/util/kvm-stat.o
> CC /tmp/tmp.HAAu6nXJ16/builtin-help.o
> MKDIR /tmp/tmp.HAAu6nXJ16/ui/tui/
> MKDIR /tmp/tmp.HAAu6nXJ16/ui/tui/
> CC /tmp/tmp.HAAu6nXJ16/ui/tui/setup.o
> CC /tmp/tmp.HAAu6nXJ16/ui/browsers/hists.o
> CC /tmp/tmp.HAAu6nXJ16/ui/tui/util.o
> arch/x86/util/pmu.c: In function ‘gnr_uncore_cha_imc_adjust_cpumask_for_snc’:
> arch/x86/util/pmu.c:249:42: error: ‘struct perf_cpu_map’ has no member named ‘map’
> 249 | adjusted[pmu_snc]->map[idx].cpu = cpu.cpu + cpu_adjust;
> | ^~
> CC /tmp/tmp.HAAu6nXJ16/builtin-buildid-list.o
> make[8]: *** [/home/acme/git/perf-tools-next/tools/build/Makefile.build:86: /tmp/tmp.HAAu6nXJ16/arch/x86/util/pmu.o] Error 1
> make[8]: *** Waiting for unfinished jobs....
> CC /tmp/tmp.HAAu6nXJ16/arch/x86/tests/bp-modify.o
> LD /tmp/tmp.HAAu6nXJ16/scripts/python/Perf-Trace-Util/perf-util-in.o
>
Yep asan/refcnt checker was fixed in v2. I just sent v3 to hopefully
address Kan's feedback:
https://lore.kernel.org/lkml/20250515181417.491401-1-irogers@google.com/
Thanks,
Ian
Powered by blists - more mailing lists