Module Name: src Committed By: ad Date: Sun Jun 14 21:47:15 UTC 2020
Modified Files: src/sys/arch/aarch64/aarch64: pmap.c src/sys/arch/aarch64/include: pmap.h Log Message: - Fix a lock order reversal in pmap_page_protect(). - Make sure pmap is always locked when updating stats; atomics no longer needed to do that. - Remove unneeded traversal of pv list in pmap_enter_pv(). - Shrink struct vm_page from 136 to 128 bytes (cache line sized) and struct pv_entry from 48 to 32 bytes (power of 2 sized). - Embed a pv_entry in each vm_page. This means PV entries don't need to be allocated for private anonymous memory / COW pages / most UBC mappings. Dynamic PV entries are then used only for stuff like shared libraries and shared memory. Proposed on port-arm@. To generate a diff of this commit: cvs rdiff -u -r1.77 -r1.78 src/sys/arch/aarch64/aarch64/pmap.c cvs rdiff -u -r1.39 -r1.40 src/sys/arch/aarch64/include/pmap.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.