8000 Fix length for per cpu PMU reset bitmap since max_cpus cpus > 64 by Martin-Lndbl · Pull Request #65 · miniosv/miniosv · GitHub
[go: up one dir, main page]

Skip to content

Fix length for per cpu PMU reset bitmap since max_cpus cpus > 64 - #65

Merged
Meandres merged 1 commit into
miniosv:masterfrom
Martin-Lndbl:fix/aarch64-pmu-reset-max-cpus
Oct 22, 2026
Merged

Meandres merged 1 commit into
miniosv:masterfrom
Martin-Lndbl:fix/aarch64-pmu-reset-max-cpus

Conversation

@Martin-Lndbl
Copy link
Copy Markdown
Collaborator

The bitmap doesn't work for instances > 64 cores since the width of one atomic uint64_t isn't enough

pmu_reset_once() kept its done flags in one 64-bit word and asserted
sched::max_cpus <= 64. Since max_cpus went to 256 (#22) that assert fails and
the aarch64 build breaks. Keep one bit per cpu in as many words as max_cpus
needs, rounded up, so it does not depend on max_cpus being a multiple of 64.

Tested on c8g.48xlarge (192 vCPUs, together with the GIC max-cpus fix): a
second PerfEvent on every cpu leaves the running cycle counter enabled and
counting; with the reset forced on every call the same test fails on all cpus.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Martin-Lndbl Martin-Lndbl self-assigned this Oct 20, 2026
@Meandres Meandres left a comment
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Straightforward. LGTM

@Meandres
Meandres merged commit 13215f3 into miniosv:master Oct 22, 2026
2 checks passed
@Martin-Lndbl
Martin-Lndbl deleted the fix/aarch64-pmu-reset-max-cpus branch November 6, 2026 08:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

0