From: "Mi, Dapeng" <dapeng1.mi@linux.intel.com>
To: sashiko-reviews@lists.linux.dev
Cc: linux-perf-users@vger.kernel.org
Subject: Re: [PATCH 04/11] perf/x86/intel: Update event constraints and cache_extra_regs[] for ADL
Date: Tue, 19 May 2026 15:11:39 +0800 [thread overview]
Message-ID: <cf56e302-2bfb-4632-b778-1c2a03786ef8@linux.intel.com> (raw)
In-Reply-To: <20260515063847.1B308C2BCB0@smtp.kernel.org>
On 5/15/2026 2:38 PM, sashiko-bot@kernel.org wrote:
> Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
> - [Medium] The commit introduces a bisectability regression for MTL and ARL-U platforms by temporarily applying incorrect Alderlake-specific cache event structures.
> - [Low] Unnecessary duplication of the Golden Cove hardware cache event IDs array.
> --
>
> commit 58bdcbf21858fcf6337dcba2e5e091a86ddafd3c
> Author: Dapeng Mi <dapeng1.mi@linux.intel.com>
>
> perf/x86/intel: Update event constraints and cache_extra_regs[] for ADL
>
> This commit updates the hard-coded event constraints and cache_extra_regs[]
> for Alderlake according to the latest ADL perfmon events. It introduces
> ADL-specific variants of structures and functions to reflect differences
> in L3/node related OCR events.
>
>> Please note these changes would temporarily impact other platforms like
>> MTL/ARL-U which shares hard-coded event structures, but it would be
>> fixed soon in subsequent patches.
> Does this introduce a bisectability regression for Meteorlake and Arrowlake-U
> platforms?
>
> Every commit needs to be self-contained and functionally correct to keep the
> tree bisectable. I noticed the fixes are included later in the series.
>
> Could the patch series be reorganized to avoid leaving any platform in a
> regressed state during bisection?
Hmm, it would not introduce a bisectability regression. The hard coded
cache event MSR value table are already inaccurate before this patch.
Although the changes would impact the MTL/ARL-U, but it doesn't introduce
new issues.
>
>> diff --git a/arch/x86/events/intel/core.c b/arch/x86/events/intel/core.c
>> index 0d0edc2d1b906..7948e3afc2916 100644
>> --- a/arch/x86/events/intel/core.c
>> +++ b/arch/x86/events/intel/core.c
> [ ... ]
>
>> @@ -713,6 +715,80 @@ static __initconst const u64 glc_hw_cache_event_ids
>> },
>> };
>>
>> +/* ADL P-core (Golden cove) specific event code. */
>> +static __initconst const u64 adl_glc_hw_cache_event_ids
>> + [PERF_COUNT_HW_CACHE_MAX]
>> + [PERF_COUNT_HW_CACHE_OP_MAX]
>> + [PERF_COUNT_HW_CACHE_RESULT_MAX] =
>> +{
>> + [ C(L1D ) ] = {
>> + [ C(OP_READ) ] = {
>> + [ C(RESULT_ACCESS) ] = 0x81d0,
>> + [ C(RESULT_MISS) ] = 0xe124,
>> + },
>> + [ C(OP_WRITE) ] = {
>> + [ C(RESULT_ACCESS) ] = 0x82d0,
>> + },
>> + },
> [ ... ]
>
>> + [ C(BPU ) ] = {
>> + [ C(OP_READ) ] = {
>> + [ C(RESULT_ACCESS) ] = 0x4c4,
>> + [ C(RESULT_MISS) ] = 0x4c5,
>> + },
>> + [ C(OP_WRITE) ] = {
>> + [ C(RESULT_ACCESS) ] = -1,
>> + [ C(RESULT_MISS) ] = -1,
>> + },
>> + [ C(OP_PREFETCH) ] = {
>> + [ C(RESULT_ACCESS) ] = -1,
>> + [ C(RESULT_MISS) ] = -1,
>> + },
>> + },
>> +};
> This array appears to be identical to the existing glc_hw_cache_event_ids
> array, except that the C(NODE) entries are omitted and default to zero.
>
> Instead of duplicating the entire array and risking silent divergence when
> future updates are made, could we dynamically clear the C(NODE) entries for
> Alderlake during initialization?
>
> A similar pattern of localized overrides is already utilized in
> intel_pmu_init_grt() for the C(ITLB) event.
The new introduced adl_glc_hw_cache_event_ids[] table would be called by
multiple places, It looks clearer to define a new table instead of
overwriting the old table.
Thanks.
>
next prev parent reply other threads:[~2026-05-19 7:12 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-15 6:11 [PATCH 00/11] perf/x86/intel: Fix inaccurate hard-coded event configurations Dapeng Mi
2026-05-15 6:11 ` [PATCH 01/11] perf/x86/intel: Update event constraints and cache_extra_regs[] for ICX Dapeng Mi
2026-05-19 22:19 ` Chen, Zide
2026-05-20 1:10 ` Mi, Dapeng
2026-05-15 6:11 ` [PATCH 02/11] perf/x86/intel: Update event constraints and cache_extra_regs[] for SPR Dapeng Mi
2026-05-19 22:25 ` Chen, Zide
2026-05-20 2:08 ` Mi, Dapeng
2026-05-15 6:11 ` [PATCH 03/11] perf/x86/intel: Update event constraints for DMR Dapeng Mi
2026-05-19 22:19 ` Chen, Zide
2026-05-15 6:11 ` [PATCH 04/11] perf/x86/intel: Update event constraints and cache_extra_regs[] for ADL Dapeng Mi
2026-05-15 6:38 ` sashiko-bot
2026-05-19 7:11 ` Mi, Dapeng [this message]
2026-05-19 22:26 ` Chen, Zide
2026-05-15 6:11 ` [PATCH 05/11] perf/x86/intel: Update event constraints and cache_extra_regs[] for MTL Dapeng Mi
2026-05-15 6:11 ` [PATCH 06/11] perf/x86/intel: Update event constraints and cache_extra_regs[] for LNL Dapeng Mi
2026-05-15 6:11 ` [PATCH 07/11] perf/x86/intel: Update event constraints and cache_extra_regs[] for ARL Dapeng Mi
2026-05-15 6:40 ` sashiko-bot
2026-05-19 7:12 ` Mi, Dapeng
2026-05-15 6:11 ` [PATCH 08/11] perf/x86/intel: Update event constraints for PTL Dapeng Mi
2026-05-15 6:11 ` [PATCH 09/11] perf/x86/intel: Update event constraints and cache_extra_regs[] for NVL Dapeng Mi
2026-05-15 6:11 ` [PATCH 10/11] perf/x86/intel: Update event constraints and cache_extra_regs[] for SRF Dapeng Mi
2026-05-19 22:23 ` Chen, Zide
2026-05-20 2:11 ` Mi, Dapeng
2026-05-15 6:11 ` [PATCH 11/11] perf/x86/intel: Update event constraints and cache_extra_regs[] for CWF Dapeng Mi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cf56e302-2bfb-4632-b778-1c2a03786ef8@linux.intel.com \
--to=dapeng1.mi@linux.intel.com \
--cc=linux-perf-users@vger.kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox