x86: Enable PAT for write-combining mappings - #147
Merged
Merged
Conversation
jakogut
requested review from
MatiasVara,
jakecorrenti,
slp and
tylerfanelli
as code owners
September 22, 2026 04:22
Enable MTRR and PAT in the generic and Windows kernel configurations to match SEV and TDX. CONFIG_X86_PAT depends on CONFIG_MTRR. Without PAT, WC mappings fall back to UC-minus. AMD and Intel userspace drivers use write-combined GPU buffers with virtio native contexts. Venus and virgl also expose write-combined buffer mappings to the guest. The UC-minus fallback makes CPU writes to these buffers expensive. Write-back mappings are unaffected. Tested with AMD native contexts on Strix Halo integrated graphics and an RX 9070 XT discrete GPU. Strix Halo showed about a 95% reduction in RADV command recording CPU time. Intel, Venus and virgl remain untested. Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com>
jakogut
force-pushed
the
enable-mtrr-pat
branch
from
September 22, 2026 04:23
8779e62 to
569ac32
Compare
Collaborator
|
Makes sense, nice one here, thanks @jakogut ! |
slp
approved these changes
Sep 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Enable MTRR and PAT in the generic and Windows kernel configurations to match SEV and TDX. CONFIG_X86_PAT depends on CONFIG_MTRR. Without PAT, WC mappings fall back to UC-minus.
AMD and Intel userspace drivers use write-combined GPU buffers with virtio native contexts. Venus and virgl also expose write-combined buffer mappings to the guest. The UC-minus fallback makes CPU writes to these buffers expensive. Write-back mappings are unaffected.
Tested with AMD native contexts on Strix Halo integrated graphics and an RX 9070 XT discrete GPU. Strix Halo showed about a 95% reduction in RADV command recording CPU time. Intel, Venus and virgl remain untested.
Signed-off-by: Joseph Kogut joseph.kogut@gmail.com