Page MenuHomeFreeBSD

arm64: VM/PMAP changes for CCA guest support
ClosedPublic

Authored by sarah.walker2_arm.com on Apr 23 2026, 10:30 AM.
Tags
None
Referenced Files
F169685903: D56599.id176274.diff
Wed, Sep 2, 7:15 AM
F169629537: D56599.id177688.diff
Wed, Sep 2, 3:03 AM
F169555878: D56599.id176274.diff
Tue, Sep 1, 10:05 PM
F169520870: D56599.id.diff
Tue, Sep 1, 7:29 PM
Unknown Object (File)
Tue, Sep 1, 2:13 PM
Unknown Object (File)
Tue, Sep 1, 1:09 AM
Unknown Object (File)
Mon, Aug 31, 11:11 AM
Unknown Object (File)
Mon, Aug 31, 2:49 AM
Subscribers

Details

Summary

When in a realm:

  • Mappings with mode VM_MEMATTR_DEVICE and VM_MEMATTR_DEVICE_NP are unprotected
  • Imported busdma buffers in protected memory are always bounced
  • If EARLY_PRINTK is in use, the UART physical address must be in the unprotected address space

Sponsored by: Arm Ltd

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 72465
Build 69348: arc lint + arc unit

Event Timeline

andrew added inline comments.
sys/arm64/arm64/efirt_machdep.c
232

Needs to be on pa not page table entry

sys/arm64/arm64/pmap.c
4223
5438–5439

This should be applied to pa as it may be wrong under FEAT_LPA2

5757

Is this correct when entering a large page, e.g. when psind == 2 a level 2 block will be created

This revision is now accepted and ready to land.May 5 2026, 2:02 PM
This revision was automatically updated to reflect the committed changes.