Skip to content

PPC32: avoid stale TBs across snapshot's mprotect swaps#3832

Open
phix33 wants to merge 1 commit into
AFLplusplus:mainfrom
phix33:fix_ppc32_snapshot
Open

PPC32: avoid stale TBs across snapshot's mprotect swaps#3832
phix33 wants to merge 1 commit into
AFLplusplus:mainfrom
phix33:fix_ppc32_snapshot

Conversation

@phix33
Copy link
Copy Markdown
Contributor

@phix33 phix33 commented May 16, 2026

Description

PPC32 TCG retains translation blocks past the mprotect()-driven page swaps performed above, so the next dispatch from the snapshotted PC executes stale TBs and SIGILLs even though guest memory and registers have been restored byte-identically. An explicit JIT flush after permission + content restoration fixes it. Gated on ppc to avoid the throughput hit on other targets (unless someone confirms a global flush is harmless).

Checklist

  • I have run ./scripts/precommit.sh and addressed all comments

@domenukk domenukk requested a review from rmalmain May 17, 2026 17:21
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.

1 participant