This is dependent on D45431 to achieve a reasonable ratio of promotion successes to failures.
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 | ||
---|---|---|
5897–5898 | The same situation arises on amd64. However, there the promotion fails inexpensively at the very beginning of pmap_promote_pde(), before we enter the loop, because of misalignment of the physical superpage in the address space. For example, for the clang executable, I see a fully populated reservation, but it is misaligned, and so we don't perform pmap_enter_2mpage(). Instead, we wind up here 512 times, and attempt promotion once. This is because ld.ldd (unlike our earlier binutils linker) sets maxpagesize to 4KB on amd64, and so the text segment is almost always misaligned by default. |