Skip to content

Add support for non-contiguous physical page mapping#666

Open
sangho2 wants to merge 3 commits intomainfrom
sanghle/lvbs/vmap2
Open

Add support for non-contiguous physical page mapping#666
sangho2 wants to merge 3 commits intomainfrom
sanghle/lvbs/vmap2

Conversation

@sangho2
Copy link
Contributor

@sangho2 sangho2 commented Feb 18, 2026

This PR introduces a vmap subsystem to the LVBS platform to map non-contiguous physical page frames into virtually contiguous addresses.

Changes

  • Add map_non_contiguous_phys_frames which is similar to existing map_phys_frame_range except that this new function is for non-contiguous physical page frames.
  • Reserve a 1 TB VA window for vmap and vunmap
  • Maintain separate hash tables for tracking PA<->VA for VMAPs (mm/vmap.rs)

@sangho2 sangho2 marked this pull request as ready for review February 18, 2026 00:58
@github-actions
Copy link

🤖 SemverChecks 🤖 ⚠️ Potential breaking API changes detected ⚠️

Click for details
--- failure enum_variant_missing: pub enum variant removed or renamed ---

Description:
A publicly-visible enum has at least one variant that is no longer available under its prior name. It may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.46.0/src/lints/enum_variant_missing.ron

Failed in:
  variant PhysPointerError::NonContiguousPages, previously in file /home/runner/work/litebox/litebox/target/semver-checks/git-main/3cfa0fa5600bfc4545b7b6fa086c315678c66151/litebox_common_linux/src/vmap.rs:170

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