Page table pages are never freed from the kernel pmap, instead they are
zeroed when a range is unmapped. This allows future mappings to be
constructed more quickly. Detect this scenario in pmap_enter_l2(), so we
don't fail to create a superpage mapping when the 2MB range is actually
available.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
sys/riscv/riscv/pmap.c | ||
---|---|---|
3204–3205 | On amd64 and arm64, we don't maintain an exact count of the valid mappings within a kernel page table page. If that is true on riscv, then this section of code should look more like the amd64 and arm64 versions. |