Skip to content

Provide functions for accessing the underlying L4 table for mapper types#184

Merged
josephlr merged 1 commit intomasterfrom
access-level-4-table
Oct 5, 2020
Merged

Provide functions for accessing the underlying L4 table for mapper types#184
josephlr merged 1 commit intomasterfrom
access-level-4-table

Conversation

@phil-opp
Copy link
Copy Markdown
Member

This is useful for setting up the recursive page table mapping in the UEFI bootloader implementation. I also think that this method makes sense in general, e.g. for determining unused memory ranges for new mappings.

@phil-opp phil-opp force-pushed the access-level-4-table branch from 4f42c9b to ee89ef2 Compare October 4, 2020 13:00
@phil-opp phil-opp requested a review from josephlr October 4, 2020 13:01
Copy link
Copy Markdown
Contributor

@josephlr josephlr left a comment

Choose a reason for hiding this comment

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

This makes sense. Some qjestions (that don't impact approval).

  • Should we have a common trait for this mapper types?
  • Is there a way to get the physical address of the L4 table for these mappers, so that we can load CR4?

@phil-opp
Copy link
Copy Markdown
Member Author

phil-opp commented Oct 5, 2020

Thanks for the review!

  • Should we have a common trait for this mapper types?

I thought about that too. Using the existing Mapper/MapperAllSizes traits does not seem fitting to me, but perhaps it makes sense to add a new trait for it (especially if we add more such methods).

  • Is there a way to get the physical address of the L4 table for these mappers, so that we can load CR4?

Yes, there is. We could for example reuse the MapperAllSizes::translate method for that.

@josephlr josephlr merged commit 3d988fc into master Oct 5, 2020
@josephlr josephlr deleted the access-level-4-table branch October 5, 2020 23:12
phil-opp added a commit that referenced this pull request Oct 31, 2020
phil-opp added a commit that referenced this pull request Nov 11, 2020
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