From: sashiko-bot@kernel.org
To: "Matt Turner" <mattst88@gmail.com>
Cc: linux-perf-users@vger.kernel.org
Subject: Re: [PATCH v7 01/14] alpha/perf: do not update an event that has no counter in alpha_pmu_del()
Date: Fri, 06 Nov 2026 04:41:27 +0000 [thread overview]
Message-ID: <sashiko-outbox-200752@kernel.org> (raw)
In-Reply-To: <20261105-alpha-profileme-v7-1-c474e892abb0@gmail.com>
> alpha_pmu_add() puts a new event on the list with current_idx set to
> PMC_NO_INDEX, and alpha_pmu_enable() assigns the counter later, through
> maybe_change_configuration(). Alpha has no group transaction callbacks,
> so the core schedules a group with the PMU disabled for the whole
> group. When a sibling does not fit, for example because the counters
> are multiplexed between groups, group_sched_in() rolls back the events
> it already added by calling alpha_pmu_del() on them, before the PMU is
> enabled again.
>
> alpha_pmu_del() then passes idx == -1 to alpha_perf_event_update(),
> which indexes pmc_count_shift[], pmc_count_mask[] and pmc_max_period[]
> at -1, and it clears bit -1 of idx_mask, an undefined shift. On the
> EV67 PMU the entries before each array happen to make the computed
> delta zero, so the event's count survives, but only by luck of the
> struct layout.
>
> The event was never on a counter, so there is no count to absorb and no
> counter to turn off. Only remove it from the list.
>
> Fixes: 979f867191f8 ("alpha: implement HW performance events on the EV67 and later CPUs")
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: Matt Turner <mattst88@gmail.com>
Sashiko has reviewed this patch and found no issues.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261105-alpha-profileme-v7-0-c474e892abb0@gmail.com?part=1
next prev parent reply other threads:[~2026-11-06 4:41 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-06 4:30 [PATCH v7 00/14] alpha/perf: add ProfileMe sampling Matt Turner
2026-11-06 4:30 ` [PATCH v7 01/14] alpha/perf: do not update an event that has no counter in alpha_pmu_del() Matt Turner
2026-11-06 4:41 ` sashiko-bot [this message]
2026-11-06 4:30 ` [PATCH v7 02/14] alpha/perf: pass PERFMON_CMD_LOGGING_ALL to the logging options call Matt Turner
2026-11-06 4:33 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 03/14] alpha/perf: add sysfs format and event attributes Matt Turner
2026-11-06 4:35 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 04/14] alpha/perf: clear PERF_HES_UPTODATE when an event starts counting Matt Turner
2026-11-06 4:39 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 05/14] alpha/perf: do not report user registers from the entry code Matt Turner
2026-11-06 4:46 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 06/14] alpha/perf: ignore overflow interrupts the counter does not account for Matt Turner
2026-11-06 4:54 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 07/14] alpha/perf: implement ProfileMe sampling Matt Turner
2026-11-06 5:06 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 08/14] alpha/perf: attach ProfileMe status as PERF_SAMPLE_RAW data Matt Turner
2026-11-06 5:00 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 09/14] alpha/perf: optionally randomize the ProfileMe sampling interval Matt Turner
2026-11-06 5:06 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 10/14] alpha/perf: report the ProfileMe window count as the sample weight Matt Turner
2026-11-06 5:09 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 11/14] alpha/perf: report the data source of ProfileMe memory accesses Matt Turner
2026-11-06 5:13 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 12/14] alpha/perf: add ProfileMe sample filters Matt Turner
2026-11-06 5:13 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 13/14] alpha/perf: sample only retired instructions for precise events Matt Turner
2026-11-06 5:14 ` sashiko-bot
2026-11-06 4:30 ` [PATCH v7 14/14] alpha/perf: honor exclude_user and exclude_kernel for ProfileMe events Matt Turner
2026-11-06 5:44 ` sashiko-bot
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=sashiko-outbox-200752@kernel.org \
--to=sashiko-bot@kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=mattst88@gmail.com \
--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