Details
Details
Diff Detail
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
sys/arm64/arm64/pmap.c | ||
---|---|---|
5772–5775 | There is no need for if (l2pg != NULL) l2pg->ref_count--; here because this is the kernel pmap. A similar if statement could be eliminated from the amd64 version. | |
5775–5776 | I could eliminate these two lines because !remove_pt does not (temporarily) map the page table page. |
Comment Actions
Rename remove_pt to demote_kl2e to better reflect what it controls.
Convert a panic to a KASSERT.
Deindent some code.
Comment Actions
Do you have some local modifications to test the ADDR_IS_KERNEL(va) code path in pmap_enter_l2()?
sys/arm64/arm64/pmap.c | ||
---|---|---|
5777 | Maybe, "kernel L3 page table page" to be a bit more precise? |
Comment Actions
Yes, I have a debug sysctl procedure that tests this code path.
sys/arm64/arm64/pmap.c | ||
---|---|---|
5790–5791 | While these operations are no longer needed when we perform pmap_remove_l2(), they are still needed after pmap_remove_l3_range() because it doesn't unmap the L3 PTP. |