The requirements of an Address Space ID allocator and a Virtual Machine ID
allocator are similar. Generalise the former code so it can be used with
the latter.
Details
Details
- Reviewers
markj alc manu - Group Reviewers
arm64 - Commits
- rS358328: Generalise the arm64 ASID allocator.
Diff Detail
Diff Detail
- Lint
Lint Passed - Unit
No Test Coverage - Build Status
Buildable 29595 Build 27456: arc lint + arc unit
Event Timeline
Comment Actions
Is your overall strategy to incrementally replace PMAP_ASSERT_STAGE1(pmap)'s by correct handling of stage 2 PTE?
sys/arm64/arm64/pmap.c | ||
---|---|---|
998 | I would suggest moving the second sentence inside pmap_init_asids() and change the wording to: "We may be too early in ..." | |
5883 | if (pmap->pm_stage == PM_STAGE1) ... else ...? |
Comment Actions
Yes. I'm currently working on pmap_enter and just need to implement cache and tlb handling for it.
sys/arm64/arm64/pmap.c | ||
---|---|---|
5883 | I'll add PMAP_ASSERT_STAGE1(pmap); for now as the process for VMID reset looks like it will be more complex, e.g. may need to call into the hypervisor. |
Comment Actions
- Move a comment to follow code into pmap_init_asids
- Assert we have a Stage 1 pmap in pmap_reset_asid_set and remove extra whitespace